Condividi tramite


Novità di Windows Information Protection

Windows Imaging Component (WIC) è stato aggiornato con le nuove versioni di Windows. In questo argomento viene fornita un'introduzione rapida a queste nuove funzionalità.

Novità di Windows 10, versione 1507

Accesso a dati JPEG di basso livello per la decodifica e la codifica WIC

A partire da Windows 10, versione 1507, WIC consente l'accesso a strutture di dati JPEG di basso livello, incluse le tabelle Huffman e quantizzazione. Per altre informazioni, vedere gli argomenti seguenti:

Indicizzazione JPEG

L'indicizzazione JPEG è una tecnica che migliora significativamente le prestazioni dell'accesso casuale a piccole aree secondarie di un'immagine JPEG di grandi dimensioni, a costo di un utilizzo aggiuntivo della memoria. L'indicizzazione JPEG può essere sfruttata da qualsiasi chiamante di WIC.

L'interfacciaID2D1ImageSourceFromWicè progettata per sfruttare l'indicizzazione JPEG se è attivata. Ad esempio, l'API ID2D1ImageSource richiederà solo le sezioni necessarie dell'immagine in uno scenario come panoramica e zoom per un'immagine con risoluzione di grandi dimensioni. Per altre informazioni, vedere gli argomenti seguenti:

Novità di Windows 8.1

Supporto per immagini JPEG YCbCr

A partire da Windows 8.1, WIC offre il supporto per la decodifica, la trasformazione e la codifica dei dati immagine JPEG Y'CbCr nel formato nativo. Ciò consente alle app di ridurre significativamente il tempo di elaborazione e il consumo di memoria per determinate operazioni di imaging quando si lavora con JPEG con codifica Y'CbCr. Per altre informazioni, vedere gli argomenti seguenti:

Supporto per i formati compressi a blocchi (file DDS)

A partire da Windows 8.1, WIC aggiunge un nuovo codec che supporta immagini DDS codificate nei formati seguenti: DXGI_FORMAT_BC1_UNORM, DXGI_FORMAT_BC2_UNORM e DXGI_FORMAT_BC3_UNORM. È possibile accedere ai dati compressi in un formato decodificato tramite interfacce WIC standard o accedere direttamente tramite nuove interfacce specifiche DDS. Per altre informazioni, vedere gli argomenti seguenti:

Novità di Windows 8

In Windows 8, WIC è stato aggiornato con diverse nuove funzionalità. La versione aggiornata di WIC è disponibile anche in Windows 7 e Windows Server 2008 R2 tramite l'aggiornamento della piattaforma per Windows 7, disponibile tramite l'aggiornamento della piattaforma per Windows 7.

Integrazione migliorata di Direct2D

WiC in Windows 8 offre queste API per migliorare l'integrazione di Direct2D con WIC:

Modifiche al supporto alfa del codec BMP

WIC in Windows 8 supporta il caricamento di file di immagine BITMAPV5HEADER come immagini formattate in WICPixelFormat32bppBGRA. Inoltre, il codificatore BMP supporta una nuova opzione booleana del codificatore "EnableV5Header32bppBGRA", che indica al codificatore di scrivere un BITMAPV5HEADER con i dati di immagine 32bppBGRA.

Per altre informazioni sui formati BMP, vedi Panoramica del formato BMP .

Nuovi formati di pixel

WiC in Windows 8 definisce questi nuovi formati di pixel:

  • GUID_WICPixelFormat32bppRGB
  • GUID_WICPixelFormat64bppRGB
  • GUID_WICPixelFormat96bppRGBFloat
  • GUID_WICPixelFormat64bppPRGBAHalf

Nota

Il codec predefinito TIFF restituirà i dati GUID_WICPixelFormat96bppRGBFloat. Gli altri tre formati non vengono usati dai codec predefiniti.

 

Restrizioni all'estendibilità dei componenti in AppContainer

Quando viene eseguito in un processo AppContainer, che include tutte le app di Windows Store, WiC userà solo i componenti forniti da Windows, indipendentemente dal fatto che nel sistema siano installati componenti aggiuntivi. L'app che non è in esecuzione in AppContainer non è interessata.

Le app non devono apportare modifiche al codice da eseguire in un AppContainger, ma il WICComponentEnumerateOptions flag e i parametri GUID del fornitore non avranno alcun effetto. WiC non caricherà un'immagine se non può essere decodificata da un codec fornito da Windows e chiamando il metodo CreateComponentEnumerator restituirà solo i componenti forniti da Windows.

Modifiche al CLSID_WICPngDecoder e al supporto del contesto del colore del decodificatore PNG

CLSID_WICPngDecoder1 è stato aggiunto con lo stesso GUID di CLSID_WICPngDecoder, insieme a CLSID_WICPngDecoder2.

Quando viene compilato con l'SDK di Windows 8, CLSID_WICPngDecoder è definito come CLSID_WICPngDecoder2 per favorire l'uso delle app appena compilate con il nuovo comportamento del decodificatore PNG. Le app devono continuare a specificare CLSID_WICPngDecoder.

Se si specifica CLSID_WICPngDecoder2 verrà creata una versione del decodificatore PNG WIC che genererà un IWICColorContext da blocchi cHRM e gAMA. In questo modo è possibile usare questi metadati dello spazio dei colori con altre API di Windows per la gestione del colore dell'immagine di origine. Un IWICColorContext non viene generato dai blocchi gAMA e cHRM se è presente un blocco iCCP, se è presente un blocco sRGB o se i blocchi gAMA e cHRM indicano uno spazio colore sRGB.

Un'app può specificare CLSID_WICPngDecoder1 per creare una versione del decodificatore PNG WIC che non genera un IWICColorContext dai blocchi gAMA e cHRM. Corrisponde al comportamento del decodificatore PNG nelle versioni precedenti di Windows.

Modifiche apportate a WINCODEC_SDK_VERSION

Quando viene compilato contro il Windows 8 SDK, WINCODEC_SDK_VERSION viene #defined a WINCODEC_SDK_VERSION2 allo scopo di promuovere le nuove app compilate usando il nuovo comportamento del decodificatore PNG. In caso contrario, è definito come WINCODEC_SDK_VERSION1. Le app devono continuare a specificare WINCODEC_SDK_VERSION.

Se si specifica WINCODEC_SDK_VERSION quando si chiama WICCreateImagingFactory_Proxy per creare la fabbrica di immagini, viene creato CLSID_WICPngDecoder2 invece di CLSID_WICPngDecoder1 dal metodo CreateDecoder e dalle relative varianti. Inoltre, un enumeratore di informazioni sui componenti del decodificatore restituirà CLSID_WICPngDecoder2 informazioni sul componente, ma non CLSID_WICPngDecoder1 informazioni.

Se si specifica WINCODEC_SDK_VERSION1, CLSID_WICPngDecoder1 verrà usato invece di CLSID_WICPngDecoder2 nei casi precedenti.

Modifiche a CLSID_WICImagingFactory

CLSID_WICImagingFactory1 è stato aggiunto con lo stesso GUID di CLSID_WICImagingFactory, ed è stato aggiunto CLSID_WICImagingFactory2.

Quando viene compilato contro il Windows 8 SDK, CLSID_WICImagingFactory è definito come CLSID_WICImagingFactory2 per promuovere le app appena compilate che utilizzano il nuovo comportamento del decodificatore PNG. Le app devono continuare a specificare CLSID_WICImagingFactory.

Se si specifica CLSID_WICImagingFactory2 quando si chiama CoCreateInstance per creare la fabbrica di imaging, viene creato CLSID_WICPngDecoder2 invece di CLSID_WICPngDecoder1 dal metodo CreateDecoder e dalle relative varianti. Inoltre, un enumeratore di informazioni sui componenti del decodificatore restituirà CLSID_WICPngDecoder2 informazioni sul componente, ma non CLSID_WICPngDecoder1 informazioni.

Se si specifica CLSID_WICImagingFactory1, CLSID_WICPngDecoder1 verrà usato invece di CLSID_WICPngDecoder2 nei casi precedenti.

Novità di Windows 7

In Windows 7, WIC è stato aggiornato con diverse nuove funzionalità. In questo argomento viene fornita un'introduzione rapida a queste nuove funzionalità.

Aggiornamenti al codec TIFF

Il codec WIC TIFF è stato aggiornato per Windows 7 per supportare diverse funzionalità non supportate dalla versione precedente di WIC.

  • Supporto per file TIFF di grandi dimensioni.
  • Decodificare le immagini TIFF a piastrelle.
  • Decodificare le immagini TIFF piatte (planari).
  • Decodificare immagini TIFF con codifica JPEG.

Decodifica progressiva

La decodifica progressiva consente di decodificare e eseguire il rendering incrementale di parti di un'immagine prima del completamento del download dell'intera immagine. Questa funzionalità migliora notevolmente l'esperienza utente quando si visualizzano immagini da Internet, perché l'utente non deve attendere il download dell'intera immagine prima che la decodifica possa iniziare. Con la decodifica progressiva, gli utenti possono visualizzare un'anteprima dell'immagine con dati disponibili molto prima del download dell'intera immagine. Questa funzionalità è essenziale per qualsiasi applicazione usata per visualizzare immagini da Internet o da origini dati con larghezza di banda limitata.

Per altre informazioni, vedere la panoramica della decodifica progressiva .

Supporto dei metadati estesi per JPEG, PNG e GIF

In Windows 7, WIC ha esteso il supporto dei metadati per immagini JPEG, PNG e GIF.

  • Aggiunta del supporto per GIF animate e proprietà GIF.
  • Gestori di metadati JPG espansi per supportare i metadati di crominanza, luminanza e commento.
  • Gestori di metadati PNG espansi per supportare i metadati tIME, sRGB, iCCP, hIST, cHRM, iTXt, bKGD e gAMA.
  • Sono stati aggiunti nuovi gestori di metadati 8BIM per i metadati ResolutionInfo e i metadati del digest IPTC.
  • Sono stati aggiunti nuovi gestori di metadati per il descrittore dello schermo logico (LSD), il descrittore di immagini (IMD), le estensioni del controllo grafico (GCE) e i metadati delle estensioni dell'applicazione (APE).
  • Supporto per i metadati che si estendono su blocchi APPn.

Supporto per Multi Threaded Apartment

Gli oggetti all'interno di un apartment multithreading (MTA) possono essere chiamati simultaneamente da qualsiasi numero di thread all'interno dell'MTA, consentendo prestazioni migliori nei sistemi multicore e in determinati scenari di server. Inoltre, i codec WIC che risiedono all'interno di un MTA possono chiamare altri oggetti che risiedono all'interno dello stesso MTA senza sostenere i costi di marshalling associati alle chiamate tra thread che risiedono in appartamenti STA diversi. In Windows 7 tutti i codec WIC predefiniti sono stati aggiornati per supportare MTA, tra cui JPEG, TIFF, PNG, GIF, ICO e BMP. È consigliabile scrivere codec per supportare MTA. I codec che non supportano MTA causeranno una riduzione significativa delle prestazioni nelle applicazioni multithreading a causa del marshalling. L'abilitazione del supporto MTA richiede l'implementazione corretta della sincronizzazione nel codec. L'implementazione esatta di queste tecniche di sincronizzazione esula dall'ambito di questo documento. Di seguito è riportato un riferimento generale per la sincronizzazione degli oggetti COM (Component Object Model).

Implementazioni del gruppo di lavoro dei metadati

Attualmente sono disponibili diversi formati di archiviazione dei metadati che contengono proprietà sovrapposte, senza standard di settore chiari o indicazioni su metodi coerenti per la lettura e la scrittura di questi formati di metadati. Per facilitare questa varietà di formati e proprietà, è stato creato il gruppo di lavoro metadati (MWG). L'obiettivo del MWG è fornire linee guida che garantiscono l'interoperabilità tra un'ampia gamma di piattaforme, applicazioni e dispositivi. Le linee guida stabilite dal MWG si applicano ai campi di metadati XMP, Exif e IPTC e ai formati di immagine JPEG, TIFF e PSD.

In Windows 7, il gestore dei metadati delle foto e il livello dei criteri dei metadati sono stati aggiornati per leggere e scrivere metadati delle immagini in base alle linee guida stabilite dal MWG. Per ulteriori informazioni sul gruppo di lavoro sui metadati (MWG), consultare le linee guida stabilite per i metadati.

Funzionalità di Windows 7 supportate in Windows Vista e Windows Server 2008

L'aggiornamento della piattaforma per Windows Vista è un set di librerie di runtime che consente agli sviluppatori di indirizzare le applicazioni a Windows 7 e Windows Vista. L'aggiornamento della piattaforma per Windows Server 2008 è un set di librerie di runtime che consente agli sviluppatori di destinare le applicazioni a Windows Server 2008 R2 e Windows Server 2008. L'aggiornamento della piattaforma per Windows Vista e l'aggiornamento della piattaforma per Windows Server 2008 saranno disponibili per tutti i clienti di Windows Vista e Windows Server 2008 tramite Windows Update. Le applicazioni di terze parti che richiedono l'aggiornamento della piattaforma per Windows Vista o l'aggiornamento della piattaforma per Windows Server 2008 possono avere Windows Update per rilevare se l'aggiornamento richiesto è installato; in caso contrario, Windows Update lo scaricherà e lo installerà in background. Per altre informazioni su entrambi gli aggiornamenti, vedere Platform Update for Windows Vista (Aggiornamento della piattaforma per Windows Vista)