Hvad er APM-filformatet?
En .apm-fil er en Aldus Placeable Metafile - et vektorgrafikformat, der udvider standarden Windows Metafile (.WMF) med en 22-byte header skabt af Aldus Corporation til deres PageMaker desktop-publishing-applikation omkring 1987. Den vigtigste tilføjelse er en bounding box: fire 16-bit heltal med fortegn, der angiver billedets omfang i logiske enheder, plus et «inch»-felt, der specificerer logiske enheder pr. tomme. Dette gjorde det muligt for PageMaker og andre DTP-værktøjer at placere en grafik i en defineret, forudsigelig størrelse på siden - noget som den almindelige WMF-header ikke kan udtrykke.
Filen identificeres ved det 4-byte little-endian magic number 0x9AC6CDD7 (bytes D7 CD C6 9A) ved offset 0. Den 22-byte APM-header følger derefter, så en standard 18-byte WMF-header, og til sidst en strøm af 16-bit GDI-tegnekommandoer (linjer, udfyldninger, tekst, indlejrede bitmaps), der slutter med en EOF-post. En 16-bit XOR-kontrolsum i APM-headeren dækker de foregående 10 header-words.
I praksis bruger de fleste Placeable WMF-filer filendelsen .wmf frem for .apm; navnet .apm er sjældent og stammer fra PageMakers egen konvention. GIMP, Inkscape, LibreOffice Draw og IrfanView registrerer alle automatisk APM-headeren. Formatet er blevet erstattet af EMF (Enhanced Metafile) siden Windows NT 3.1 i 1993.
Sikkerhed og tryghed
RISIKO: MEDIUMParsing af APM/WMF har en sikkerhedshistorik: WMF-sårbarheden fra 2005-2006 misbrugte SETABORTPROC-metafilposten til at eksekvere kode blot ved at rendere en manipuleret fil. Rettet i alle understøttede Windows-versioner. En normal APM-clipart fra et betroet arkiv er sikker; vær forsigtig med APM-filer fra ukendte kilder på ikke-opdaterede systemer.
Formatdetaljer
kort fortaltProgrammer der åbner APM-filer
Tekniske detaljer
dyb specifikation| Filtype | Vektorbillede - Windows Metafile med en foranstillet 22-byte Aldus Placeable-header |
| Kodning | Binær, little-endian |
| Magic bytes | D7 CD C6 9A (DWORD 0x9AC6CDD7, little-endian) ved offset 0 |
| APM-headerstørrelse | 22 bytes: magic (4B) + HWmf handle (2B) + bounding-box rektangel (8B) + inch (2B) + reserveret (4B) + XOR-kontrolsum (2B) |
| Kontrolsum | 16-bit XOR af de 10 foregående 16-bit words i APM-headeren; ingen kontrolsum i selve WMF-delen |
| Koordinatrum | 16-bit med fortegn (±32.767 logiske enheder pr. akse); bounding box deklareret i APM-headeren |
| Farvedybde | Enhedsafhængig GDI RGB-palet; op til 24-bit i indlejrede DIBs; typisk 4-24 bpp |
| Tegnepost-format | 16-bit GDI-poststrøm (poster med variabel længde for linjer, udfyldninger, tekst, bitmaps), afsluttet af en EOF-post |
| Indpakket WMF-version | Typisk WMF v3 (0x0300); sjældent WMF v1 (0x0100) |
| Typisk filstørrelse | 2 KB - 500 KB; større når WMF-filen indlejrer bitmap-billeder |
| Bemærkning om filendelse | Filendelsen .apm er sjælden; de fleste Placeable WMF-filer cirkulerer under endelsen .wmf. APM-navnet stammer fra Aldus PageMaker. |
| Efterfølgende format | EMF (Enhanced Metafile) - 32-bit GDI-poststrøm, Windows NT 3.1+ (1993) |
| Udgivet | 1987 (Aldus PageMaker 3.0 era; APM header added to WMF) |
| Seneste version | MS-WMF specification (format frozen; superseded by EMF) |
| Åben standard | Ja · royaltyfri |
| Specifikation | learn.microsoft.com |
APM-konverteringer
Fællesskabets Q&A
spurgt af brugereIngen spørgsmål endnu - vær den første til at spørge om APM-filer.