|
Kibővített EMF/WMF metafile támogatás
Áttekintés
A HotPDF mostantól jelentősen kibővített támogatást nyújt az Enhanced Metafile (EMF) és Windows Metafile (WMF) formátumokhoz. Az új implementáció automatikus formátumfelismerést, több pozicionálási lehetőséget, fejlett méretezés-szabályozást és jobb renderelési minőséget tartalmaz a PDF dokumentumokban lévő vektorgrafikákhoz
Főbb fejlesztések
- Automatikus EMF/WMF formátumfelismerés és megfelelő feldogozás
- Többféle pozicionálási lehetőség (középre igazított, bal felső, egyéni koordináták)
- Kibővített méretezés és képarány-szabályozás
- Közvetlen EMF renderelés a vektorgrafikák megőrzéséhez
- Bitkép-konverziós opció a kompatibilitáshoz
- Javított memóriakezelés a nagy méretű metafile-okhoz
- Összetett vektorgrafikák és szövegek jobb kezelése
Pozíciószabályozási lehetőségek
A kibővített metafile támogatás rugalmas pozicionálási lehetőségeket tartalmaz:
- mpCenter: Középre igazított metafile az oldalon (alapértelmezett viselkedés)
- mpLeftTop: A bal felső sarokban megjelenő metafile (X=0, Y=0)
- mpCustom: A megadott pozícióban megjelenő metafile (X, Y paramétereket igényel)
Használati példák
Alapvető használat (Alapértelmezett középre igazított megjelenítés)
// Delphi example - Default centered display
procedure ShowMetafileDefault;
var
PDF: THotPDF;
MetaFile: TMetafile;
begin
PDF := THotPDF.Create(nil);
MetaFile := TMetafile.Create;
try
PDF.BeginDoc;
PDF.AddPage;
// Load metafile
MetaFile.LoadFromFile('diagram.emf');
// Display centered on page (default)
PDF.CurrentPage.ShowMetafile(MetaFile);
PDF.EndDoc;
finally
MetaFile.Free;
PDF.Free;
end;
end;
Pozíciószabályozás használata
// Delphi example - Advanced positioning
procedure ShowMetafileAdvanced;
var
PDF: THotPDF;
MetaFile: TMetafile;
begin
PDF := THotPDF.Create(nil);
MetaFile := TMetafile.Create;
try
PDF.BeginDoc;
PDF.AddPage;
MetaFile.LoadFromFile('chart.wmf');
// Top-left corner display
PDF.CurrentPage.ShowMetafile(MetaFile, mpLeftTop);
// Custom position display
PDF.CurrentPage.ShowMetafile(MetaFile, mpCustom, 100, 200);
PDF.EndDoc;
finally
MetaFile.Free;
PDF.Free;
end;
end;
Kibővített metódusok
A kibővített EMF/WMF támogatás több új metódust vezet be:
THPDFPage.ShowMetafile túlterhelések
ShowMetafile(MetaFile: TMetafile) - Alapértelmezett középre igazított megjelenítés
ShowMetafile(MetaFile: TMetafile; Position: THPDFMetafilePosition) - Pozíciószabályozás
ShowMetafile(MetaFile: TMetafile; Position: THPDFMetafilePosition; X, Y: Single) - Egyéni pozicionálás
Kibővített feldolgozási metódusok
EnhancedShowMetafile - Speciális feldolgozás kibővített funkciókkal
RenderEmfDirect - Közvetlen EMF renderelés a vektorok megőrzéséhez
RenderEmfAsBitmap - Bitkép-konverzió a kompatibilitáshoz
RenderWmfAsBitmap - WMF bitkép-renderelés pozíciószabályozással
Technikai implementáció
A kibővített EMF/WMF támogatás a HPDFEmf.pas egységen keresztül van implementálva, amely a következőket biztosítja:
- THPDFEmfEnhanced: Alapvető bővítményosztály az EMF feldolgozáshoz
- THPDFEmfPatcher: Segédosztály az EMF konverzióhoz és rendereléshez
- THPDFMetafilePosition: Felsorolás a pozíciószabályozáshoz
- Enhanced EMF Record Processing: Támogatás a speciális EMF rekordokhoz
Speciális funkciók
EMF rekord támogatás
- EMR_BITBLT - Bitkép-műveletek
- EMR_STRETCHDIBITS - Nyújtott bitkép-műveletek
- EMR_ALPHABLEND - Alfa-keverési műveletek
- Kibővített szövegenderelés
- Összetett útvonal-műveletek
Renderelési opciók
- Vector Preservation: Megőrzi a vektorgrafika minőségét
- Bitmap Fallback: Automatikus bitkép-tartalékmegoldás az összetett grafikákhoz
- Scaling Options: Automatikus és kézi méretezés-szabályozás
- Quality Control: Konfigurálható renderelési minőségbeállítások
Teljesítmény-optimalizálások
- Memóriahatékony feldolgozás nagy metafile-ok esetén
- Optimalizált EMF rekord-elemzés
- Intelligens gyorsítótárazás az ismétlődő elemekhez
- Csökkentett memóriaigény a konverzió során
Kompatibilitás és szabványok
- Windows EMF 1.0 és kibővített EMF támogatás
- Windows Metafile (WMF) visszamenőleges kompatibilitás
- Keresztplatformos renderelési konzisztencia
- Megfelelés a PDF vektorgrafikai szabványoknak
Hibaelhárítás
Gyakori problémák és megoldások:
- Nagy méretű metafile-ok: Használjon bitkép-renderelést a nagyon nagy vagy összetett metafile-okhoz
- Szövegrenderelés: Győződjön meg arról, hogy a betűtípusok elérhetők a céleszközön
- Összetett grafikák: Fontolja meg a közvetlen EMF renderelést a jobb minőség érdekében
- Pozicionálási problémák: Használjon egyéni pozicionálást a pontos elhelyezéshez
Lásd még
|