Metode IXpsOMObjectFactory::CreateImageBrush (xpsobjectmodel.h)
Membuat antarmuka IXpsOMImageBrush .
Sintaks
HRESULT CreateImageBrush(
[in] IXpsOMImageResource *image,
[in] const XPS_RECT *viewBox,
[in] const XPS_RECT *viewPort,
[out, retval] IXpsOMImageBrush **imageBrush
);
Parameter
[in] image
Antarmuka IXpsOMImageResource yang berisi gambar yang akan digunakan sebagai gambar sumber kuas.
[in] viewBox
Struktur XPS_RECT yang mendefinisikan kotak tampilan, yang merupakan area gambar sumber yang digunakan oleh kuas.
[in] viewPort
Struktur XPS_RECT yang mendefinisikan viewport, yang merupakan area yang dicakup oleh petak peta pertama di area output.
[out, retval] imageBrush
Penunjuk ke antarmuka IXpsOMImageBrush baru.
Nilai kembali
Metode mengembalikan HRESULT. Nilai yang mungkin termasuk, tetapi tidak terbatas pada, yang ada dalam tabel berikut. Untuk informasi tentang nilai pengembalian API dokumen XPS yang tidak tercantum dalam tabel ini, lihat Kesalahan Dokumen XPS.
Menampilkan kode | Deskripsi |
---|---|
|
Metode berhasil. |
|
gambar, viewBox, viewPort, atau imageBrush adalah NULL. |
|
viewBox atau viewPort berisi persegi panjang atau nilai yang tidak valid. |
Keterangan
Kotak tampilan kuas menentukan bagian gambar sumber atau visual yang akan digunakan sebagai gambar petak peta.
Koordinat kotak tampilan kuas relatif terhadap konten sumber, sehingga (0,0) menentukan sudut kiri atas konten sumber. Untuk gambar, dimensi yang ditentukan oleh kotak tampilan kuas dinyatakan dalam unit 1/96". Koordinat piksel yang sesuai dalam gambar sumber dihitung sebagai berikut:
Dalam ilustrasi yang mengikuti, gambar di sebelah kiri adalah contoh gambar sumber, dan bahwa di ujung kanan adalah kuas yang menghasilkan setelah memilih kotak tampilan.
![Ilustrasi yang memperlihatkan contoh kotak tampilan](images/createbrush.png)
Nilai parameter sebelumnya sesuai dengan gambar sumber sebagai berikut:
- SourceLeft = (96 × 48) / 96 = 48 piksel dari sisi kiri
- SourceTop = (96 × 24) / 96 = 24 piksel dari atas
- SourceWidth = (lebar 96 × 24) / 96 = 24 piksel
- SourceHeight = (96 × 48) / 96 = tinggi 48 piksel
Kuas gambar adalah kuas petak peta yang mengambil gambar, atau bagian darinya, mengubah gambar untuk membuat petak peta, menempatkan petak peta yang dihasilkan di viewport (geometri tujuan petak peta di area output), dan mengisi area output seperti yang dijelaskan oleh mode petak peta.
Viewport adalah area yang dicakup oleh petak peta pertama di area output. Gambar viewport diulang di seluruh area output seperti yang dijelaskan oleh mode petak peta.
Ilustrasi berikutnya menunjukkan bagaimana kuas gambar digunakan untuk mengisi area output. Dari kiri ke kanan, gambar asli diubah untuk mengisi viewport, lalu ditempatkan di area viewport area output, lalu diratakan untuk mengisi area output.
![Gambar yang menunjukkan bagaimana kuas petak mengisi geometri](images/tile_cherry.png)
IXpsOMImageBrush *newInterface;
// The following values are defined outside of
// this example.
// IXpsOMImageResource *image;
// XPS_RECT viewBox;
// XPS_RECT viewPort;
// Note the implicit requirement that CoInitializeEx
// has previously been called from this thread.
hr = CoCreateInstance(
__uuidof(XpsOMObjectFactory),
NULL,
CLSCTX_INPROC_SERVER,
_uuidof(IXpsOMObjectFactory),
reinterpret_cast<LPVOID*>(&xpsFactory)
);
if (SUCCEEDED(hr))
{
hr = xpsFactory->CreateImageBrush (
image,
&viewBox,
&viewPort,
&newInterface);
if (SUCCEEDED(hr))
{
// use newInterface
newInterface->Release();
}
xpsFactory->Release();
}
else
{
// evaluate HRESULT error returned in hr
}
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 7, Windows Vista dengan SP2 dan Pembaruan Platform untuk Windows Vista [aplikasi desktop | Aplikasi UWP] |
Server minimum yang didukung | Windows Server 2008 R2, Windows Server 2008 dengan SP2 dan Pembaruan Platform untuk Windows Server 2008 [aplikasi desktop | Aplikasi UWP] |
Target Platform | Windows |
Header | xpsobjectmodel.h |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk