O que é o formato de ficheiro APM?
Um arquivo .apm é um Aldus Placeable Metafile - um formato de gráficos vetoriais que estende o padrão Windows Metafile (.WMF) com um cabeçalho de 22 bytes criado pela Aldus Corporation para seu aplicativo de editoração eletrônica PageMaker por volta de 1987. A principal adição é uma caixa delimitadora (bounding box): quatro inteiros assinados de 16 bits declarando a extensão da imagem em unidades lógicas, além de um campo «inch» especificando unidades lógicas por polegada. Isso permitia que o PageMaker e outras ferramentas de DTP posicionassem um gráfico em um tamanho definido e previsível na página - algo que o cabeçalho WMF simples não consegue expressar.
O arquivo é identificado pelo número mágico little-endian de 4 bytes 0x9AC6CDD7 (bytes D7 CD C6 9A) no deslocamento 0. O cabeçalho APM de 22 bytes segue, depois um cabeçalho WMF padrão de 18 bytes e, finalmente, um fluxo de comandos de desenho GDI de 16 bits (linhas, preenchimentos, texto, bitmaps incorporados) terminando com um registro EOF. Um checksum XOR de 16 bits no cabeçalho APM cobre as 10 palavras de cabeçalho precedentes.
Na prática, a maioria dos arquivos WMF posicionáveis usa a extensão .wmf em vez de .apm; o nome .apm é raro e origina-se da própria convenção do PageMaker. GIMP, Inkscape, LibreOffice Draw e IrfanView detectam automaticamente o cabeçalho APM. O formato foi substituído pelo EMF (Enhanced Metafile) desde o Windows NT 3.1 em 1993.
Segurança e proteção
RISCO: MEDIUMA análise de APM/WMF tem um histórico de segurança: a vulnerabilidade WMF de 2005-2006 abusava do registro de metafile SETABORTPROC para executar código apenas ao renderizar um arquivo malicioso. Corrigido em todas as versões suportadas do Windows. Um clipart APM normal de um arquivo de editoração eletrônica confiável é seguro; seja cauteloso com arquivos APM de fontes desconhecidas em sistemas não atualizados.
Detalhes do formato
em resumoProgramas que abrem arquivos APM
Detalhes técnicos
especificação profunda| Tipo de arquivo | Imagem vetorial - Windows Metafile com um cabeçalho Aldus Placeable de 22 bytes prefixado |
| Codificação | Binário, little-endian |
| Bytes mágicos | D7 CD C6 9A (DWORD 0x9AC6CDD7, little-endian) no deslocamento 0 |
| Tamanho do cabeçalho APM | 22 bytes: magic (4B) + handle HWmf (2B) + retângulo da caixa delimitadora (8B) + polegada (2B) + reservado (4B) + checksum XOR (2B) |
| Checksum | XOR de 16 bits das 10 palavras de 16 bits precedentes no cabeçalho APM; sem checksum no corpo WMF |
| Espaço de coordenadas | 16 bits assinado (±32.767 unidades lógicas por eixo); caixa delimitadora declarada no cabeçalho APM |
| Profundidade de cor | Paleta RGB GDI dependente do dispositivo; até 24 bits em DIBs incorporados; tipicamente 4-24 bpp |
| Formato de registro de desenho | Fluxo de registros GDI de 16 bits (registros de comprimento variável para linhas, preenchimentos, texto, bitmaps), terminado por um registro EOF |
| Versão WMF encapsulada | Tipicamente WMF v3 (0x0300); raramente WMF v1 (0x0100) |
| Tamanho típico do arquivo | 2 KB - 500 KB; maior quando o WMF incorpora imagens bitmap |
| Nota sobre a extensão | A extensão .apm é rara; a maioria dos arquivos WMF posicionáveis circula sob a extensão .wmf. O nome APM originou-se com o Aldus PageMaker. |
| Formato sucessor | EMF (Enhanced Metafile) - fluxo de registros GDI de 32 bits, Windows NT 3.1+ (1993) |
| Lançado | 1987 (Aldus PageMaker 3.0 era; APM header added to WMF) |
| Versão mais recente | MS-WMF specification (format frozen; superseded by EMF) |
| Padrão aberto | Sim · livre de royalties |
| Especificação | learn.microsoft.com |
Conversões de APM
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos APM.