Bagikan melalui


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
TTFMFP_SUBSET
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.

TTFMFP_SUBSET1
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.

TTFMFP_DELTA
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

Lihat juga

CFP_ALLOCPROC

CFP_FREEPROC

CFP_REALLOCPROC

CreateFontPackage