Voglio installare un set di caratteri Open Type come parte della mia istanza di msi, sto usando Wix per creare l'msi.Come installare Open Type Fonts usando Wix
Qualche consiglio?
Voglio installare un set di caratteri Open Type come parte della mia istanza di msi, sto usando Wix per creare l'msi.Come installare Open Type Fonts usando Wix
Qualche consiglio?
è necessario specificare la directory FontsFolder, e impostare l'attributo TrueType sul file:
<DirectoryRef Id="FontsFolder">
<Component Id="MyFontsFonts" Guid="...">
<File Id="font1.ttf" Source="font1.ttf" TrueType="yes" />
<File Id="font2.ttf" Source="font2.ttf" TrueType="yes" />
</Component>
</DirectoryRef>
io non riuscivo a capire DirectoryRef
-forse qualcosa è cambiato nel corso degli anni, ma ho un plopped Directory
in la mia radice TARGETDIR
e l'ho fatta funzionare. Nel mio caso, avevo bisogno di Arial Narrow Bold sul server:
<Directory Id="TARGETDIR" Name="SourceDir">
<!-- snip ... all my other stuff here -->
<Directory Id="FontsFolder">
<Component Id="ComponentFontArialNarrowBold" Guid="{65F4712A-EAA6-4801-9200-212A3593D6E2}">
<File Id="FileFontArialNarrowBold" Source="$(var.SolutionDir)Res\Fonts\ARIALNB.TTF" TrueType="yes" KeyPath="yes" />
</Component>
</Directory>
</Directory>
Per installare i font è necessario impostare due parti nei vostri codici:
<Feature Id="ProductFeature" Title="WixSetup" Level="1">
<ComponentGroupRef Id="ProductComponents" />
<ComponentRef Id="ApplicationShortcut" />
<ComponentRef Id="ApplicationShortcutDesktop" />
<ComponentRef Id="MyFontsFonts" />
</Feature>
.
.
.
<Directory Id="TARGETDIR" Name="SourceDir">
.
.
.
<Directory Id="FontsFolder">
<Component Id="MyFontsFonts" Guid="myGuid">
<File Id="font1.ttf" Source="Fonts\font1.ttf" TrueType="yes" />
</Component>
</Directory>
</Directory>
Ha funzionato meraviglie per me, grazie! – RugerSR9
Come può dire WiX di ignorare l'installazione dei font, se sono esistono già sul sistema? – essamSALAH
@essamSALAH: se si inserisce ciascun file in un componente separato, il file fungerà da keypath del componente. Un componente non verrà installato se il suo keypath è già presente. –
Sembra che manchi qualcosa. Ecco l'errore che ho riscontrato quando ho provato questo: 'errore LGHT0094: riferimento non risolto al simbolo 'Directory: FontsFolder'', c'è qualcos'altro che mi manca? –