Fungsi MergeFontPackage (fontsub.h)
Fungsi MergeFontPackage memanipulasi font yang dibuat oleh CreateFontPackage. Ini sedikit lebih fleksibel daripada namanya: dapat menangani semua font subset dan paket font yang dibuat oleh CreateFontPackage dengan tepat. Ini dapat mengubah paket font menjadi font yang berfungsi, dan dapat menggabungkan paket font Delta menjadi font kerja yang disiapkan dengan tepat.
Biasanya, CreateFontPackage membuat font subset dan paket font untuk diteruskan ke printer atau server cetak; MergeFontPackage berjalan pada printer atau server cetak tersebut.
Sintaks
unsigned long MergeFontPackage(
[in] const unsigned char *puchMergeFontBuffer,
[in] const unsigned long ulMergeFontBufferSize,
[in] const unsigned char *puchFontPackageBuffer,
[in] const unsigned long ulFontPackageBufferSize,
[out] unsigned char **ppuchDestBuffer,
[out] unsigned long *pulDestBufferSize,
[out] unsigned long *pulBytesWritten,
[in] const unsigned short usMode,
[in] CFP_ALLOCPROC lpfnAllocate,
[in] CFP_REALLOCPROC lpfnReAllocate,
[in] CFP_FREEPROC lpfnFree,
[in] void *lpvReserved
);
Parameter
[in] puchMergeFontBuffer
Penunjuk ke buffer yang berisi font untuk digabungkan. Ini hanya digunakan ketika usMode TTFMFP_DELTA.
[in] ulMergeFontBufferSize
Menentukan ukuran *puchMergeFontBuffer, dalam byte.
[in] puchFontPackageBuffer
Penunjuk ke buffer yang berisi paket font.
[in] ulFontPackageBufferSize
Menentukan ukuran *puchMergeFontBuffer, dalam byte.
[out] ppuchDestBuffer
Penunjuk ke variabel jenis karakter yang tidak ditandatangani*. Fungsi MergeFontPackage akan mengalokasikan buffer **ppuchDestBuffer, menggunakan lpfnAllocate dan lpfnReAllocate. Pada pengembalian yang berhasil, buffer tersebut akan berisi font yang digabungkan atau diperluas yang dihasilkan. Aplikasi ini bertanggung jawab untuk akhirnya membebaskan buffer tersebut.
[out] pulDestBufferSize
Menunjuk ke panjang yang tidak ditandatangani, yang pada pengembalian berhasil akan menentukan ukuran buffer yang dialokasikan **ppuchDestBuffer.
[out] pulBytesWritten
Menunjuk ke panjang yang tidak ditandatangani, yang pada pengembalian berhasil akan menentukan jumlah byte yang benar-benar digunakan dalam buffer **ppuchDestBuffer.
[in] usMode
Menentukan jenis proses apa yang harus dilakukan. Pilih salah satu nilai ini; mereka tidak dapat digabungkan.
Nilai | Makna |
---|---|
|
Menyalin font kerja sederhana; lihat keterangan di bawah ini.
puchMergeFontBuffer akan diabaikan; puchFontPackageBuffer harus berisi font yang berfungsi yang dibuat oleh CreateFontPackage dengan usSubsetFormat diatur ke TTFCFP_SUBSET; font kerja ini hanya akan disalin ke ppuchDestBuffer. |
|
Mengubah paket font menjadi font kerja yang dapat digabungkan; lihat keterangan di bawah ini.
puchMergeFontBuffer akan diabaikan; puchFontPackageBuffer harus berisi font kerja yang dapat digabungkan yang dibuat oleh CreateFontPackage dengan usSubsetFormat diatur ke TTFCFP_SUBSET1. Hasilnya di **ppuchDestBuffer akan menjadi font kerja yang mungkin digabungkan dengan nanti. |
|
Menggabungkan paket font Delta ke dalam font kerja yang dapat digabungkan; lihat keterangan di bawah ini.
*puchFontPackageBuffer harus berisi paket font yang dibuat oleh CreateFontPackage dengan usSubsetFormat diatur ke TTFCFP_DELTA dan puchMergeFontBuffer harus berisi paket font yang dibuat oleh panggilan sebelumnya ke MergeFontPackage dengan usMode diatur ke TTFMFP_SUBSET1 atau TTFMFP_DELTA. Font gabungan yang dihasilkan di **ppuchDestBuffer akan menjadi font kerja yang mungkin digabungkan dengan nanti. |
[in] lpfnAllocate
Fungsi panggilan balik untuk mengalokasikan memori awal untuk ppuchDestBuffer dan untuk buffer sementara.
[in] lpfnReAllocate
Fungsi panggilan balik untuk mengalokasikan ulang memori untuk ppuchDestBuffer dan untuk buffer sementara.
[in] lpfnFree
Fungsi panggilan balik untuk mengosongkan memori yang dialokasikan oleh lpfnAllocate dan lpfnReAllocate.
[in] lpvReserved
Harus diatur ke NULL.
Nilai kembali
Jika fungsi berhasil, mengembalikan nol.
Jika tidak, mengembalikan nilai bukan nol. Lihat Pesan Kesalahan Fungsi Font-Package untuk kemungkinan kesalahan ditampilkan.
Keterangan
Fungsi ini menangani empat entitas terkait yang berbeda, masing-masing mewakili font subset:
Entitas | Diproduksi oleh | Langsung dapat digunakan sebagai font |
---|---|---|
Font kerja sederhana | CreateFontPackage dengan usSubsetFormat diatur ke TFCFP_SUBSET. | Ya |
Paket font | CreateFontPackage dengan usSubsetFormat diatur ke TTFCFP_SUBSET1. | Tidak |
Paket font Delta | CreateFontPackage dengan usSubsetFormat diatur ke TTFCFP_DELTA. | Tidak |
Font kerja yang dapat digabungkan | MergeFontPackage dengan usMode diatur ke TTFMFP_SUBSET1 atau TTFMFP_DELTA. | Ya |
Persyaratan
Klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2003 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | fontsub.h |
Pustaka | FontSub.lib |
DLL | FontSub.dll |