AddImageFromFileOffset
影像處理
描述
從檔案的一部分加入影像到所選文件
例如多張影像串接在同一個檔案裡時,此函式可以把個別影像拆出來加入文件
影像加入文件後,可在任何頁面重複繪製多次,PDF 檔案大小不會再增加
支援的影像檔案類型為:BMP、TIFF、JPEG、PNG、GIF、WMF 與 EMF
PDF 版本行為:匯入每成分 16 位元的影像資料需要 PDF 1.5。文件設為 PDF 1.4 以下且儲存版本未鎖定時,AddImageFromFileOffset 會自動把文件提升到 PDF 1.5,並在 AutoBumpedFeatures 記下 16-bit image samples;呼叫端鎖定了較低的儲存版本時,相容性閘門會以 LastErrorCode 602 拒絕儲存。
BMP 與 TIFF 影像可在呼叫此函式前先呼叫 CompressImages 函式壓縮影像資料;其他影像類型會自動壓縮
語法
Delphi
Function TPDFlib.AddImageFromFileOffset(Const FileName: WideString; Offset, DataLength, Options: Integer): Integer;
ActiveX
Function PDFlib::AddImageFromFileOffset(FileName As String, Offset As Long, DataLength As Long, Options As Long) As Long
DLL
int DLAddImageFromFileOffset(int InstanceID, const wchar_t * FileName, int Offset, int DataLength, int Options);
參數
| FileName | 含影像的檔案名稱。 |
|---|---|
| Offset | 所需影像在檔案中的起始偏移。檔案第一個位元組的偏移為 0。 |
| DataLength | 影像資料長度(位元組) |
| Options | 多頁 TIFF 影像時,此參數指定要載入的頁碼。 PNG 影像:0 = 以一般方式載入影像 1 = 將 Alpha 色版載入為灰階影像 2 = 載入影像與 Alpha 色版(Alpha 上限 8 位元) 3 = 載入影像(每色版上限 8 位元) 4 = 載入 Alpha 色版(每色版上限 8 位元) 5 = 載入含 Alpha 色版的影像(兩者每色版上限 8 位元) 6 = 載入影像與 Alpha 色版 7 = 載入影像與 ICC 色彩設定檔 其他影像類型此參數應設為 0。Options 設為 -1 會強制以 GDI+ 圖形程式庫載入 TIFF、EMF 與 WMF 影像。多頁 TIFF 也可以用 GDI+ 載入,把 Options 設為 -頁碼 即可(例如第 3 頁傳 -3)。 |
傳回值
| 0 | 無法從檔案讀取影像。可能是影像資料無效,或找不到檔案。 |
|---|---|
| Non-zero | 影像已從檔案讀取並成功加入文件。傳回值是影像 ID,可搭配 DrawImage 等影像繪製函式使用。 |