2012-10-24 12 views
17

पर Wix के साथ फ़ॉन्ट स्थापित करना मैं वेबसाइट के लिए स्थापना बनाने के लिए Wix का उपयोग कर रहा हूं।स्थानीय फ़ॉन्ट फ़ोल्डर

फ़ॉन्ट जोड़ते समय, वाईएक्सएक्स एक्सटेंशन पर वाईएक्स उठाता है और आपको इसे स्थानीय फ़ॉन्ट फ़ोल्डर में स्थापित करने की आवश्यकता होती है (जब एक निर्देशिका आईडी = "फ़ॉन्ट्सफोल्डर" और ट्रू टाइप = "हाँ" का उपयोग करते समय)। यदि आप इन विशेषताओं को हटाते हैं, तो यह खत्म हो जाता है।

क्या शिकायत किए बिना कस्टम फ़ोल्डर (../Content/fonts/) पर फोंट स्थापित करने के लिए WiX प्राप्त करने का कोई तरीका है?

संपादित करें:

<Directory Id="dirFontsFolder" Name="fonts"> 
     <Component Id="cfont.ttf" Guid="BDEBACC8-D057-4406-87B9-B310BA6DFE27"> 
      <File Id="font.ttf" Source="$(var.SrcWebsite)\Content\fonts\font.ttf" KeyPath="yes" /> 
     </Component> 
    </Directory> 
ऊपर कोड के साथ

, मैं त्रुटि मिलती है:

त्रुटि LGHT1076: ICE60: फ़ाइल font.ttf एक फ़ॉन्ट नहीं है और उसकी संस्करण एक साथी फ़ाइल नहीं है संदर्भ। इसमें भाषा कॉलम में निर्दिष्ट एक भाषा होनी चाहिए।

उत्तर

11

के संदर्भ में होना चाहिए:

मुख्यपथ समाधान जवाब के आधे (देखें था एलेक्स के उत्तर)। वाईएक्स में कीपैथ विशेषता का उपयोग किए बिना, नीचे का समाधान काम नहीं करेगा।

दूसरा हिस्सा आंतरिक संगठनात्मक मूल्यांकनकर्ता (आईसीई) है कि एमएसआई पैकेजिंग करते समय वाईएक्स लिंकर (light.exe) के माध्यम से चलता है। आईसीई नियम ICE07, फ़ाइलों की सामग्री की जांच करता है, और यदि यह निर्धारित करता है कि फ़ाइल एक फ़ॉन्ट है, तो फ़ाइल को विंडोज/फ़ॉन्ट्स में मजबूर कर देगा।

ऐसा होने से रोकने के लिए, light.exe चलाते समय आपको इस नियम को अक्षम करने की आवश्यकता है। ऐसा करने के लिए, आप light.exe के बाद -इस: पैरामीटर जोड़ें। हमारे उदाहरण के लिए यह होगा:

light.exe -sice:ICE07 

आप अधिक -इस पैरामीटर जोड़कर एकाधिक नियमों को अक्षम कर सकते हैं।

+0

मुझे डीएलएल फाइलों के साथ एक ही समस्या थी; ICE07 को अक्षम करने से कुछ भी नहीं बदला, लेकिन ICE60 को अक्षम करने से चेतावनी बंद हो गई। –

2
<Directory Id="WixWorkshop" Name="WixWorkshop"> 
    <Component Id="Component1" Guid="DE1705EF-B96A-4746-AA9F-2C9D598E7D08"> 
    <File Id="File1" Name="arial.ttf" Source="arial.ttf" KeyPath="yes"/> 
    </Component> 
</Directory> 

अच्छी तरह से काम करता है - किसी भी घटक बाद में हम इस मुद्दे को खोजने में कामयाब होने के बाद मुद्दा उठाया महीने किया जा रहा निर्देशिका

+0

कीपैथ काम नहीं कर रहा था। मैंने अपना कोड प्रश्न और मुझे प्राप्त त्रुटि संदेश से जोड़ा है। – Kyzou

5

आप वी.एस. के साथ एक ही बात प्राप्त कर सकते हैं:

सही सेटअप परियोजना पर क्लिक करें, गुण पर क्लिक करें।

टूल सेटिंग्स टैब का चयन करें।

बर्फ सत्यापन अनुभाग में, आप इस मामले में, सभी चेतावनियों, या कोई विशेष ICEXX को दबा सकती हैं

[ICE60]

या

एक ही टैब पर (उपकरण सेटिंग), आप कंपाइलर या लिंकर में अतिरिक्त पैरामीटर जोड़ सकते हैं। तो, लिंकर खंड में सिर्फ जोड़ने

[-sice: ICE60]

4

बूटस्ट्रैप glyphicons_halflings के विशेष मामले के लिए।

आप भी स्थापित करने होंगे इसलिए मिलान WOFF, ईओटी, और svg एक ही समय में वेबफ़ॉन्ट, आप कर सकते हैं: जो ICE07 चेतावनी दबाकर बिना डिजाइन इस समाधान काम करता है द्वारा वेबसाइट के फोंट फ़ोल्डर में चला जाता है ttf फ़ॉन्ट निर्दिष्ट करें कि टीटीएफ फ़ाइल में एक साथी फ़ाइल है और यह ट्रू टाइप फ़ॉन्ट नहीं है।

आप भोलेपन से सिर्फ अपनी साइटों के Halflings फ़ॉन्ट फ़ाइलों को जोड़ने के लिए एक WiX टुकड़ा फोंट इस तरह फ़ोल्डर बनाते हैं:

<?xml version="1.0" encoding="UTF-8"?> 
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> 
    <Fragment> 
     <DirectoryRef Id="WebsiteFontsDir"> 
      <Component Id="CMP_WebsiteFonts" Guid="{********-482C-4924-B06E-9FAC34F89D1D}" KeyPath="yes"> 
       <File Id="glyphicons_halflings_regular.eot" Source="$(var.ViewerModule.TargetDir)Police\fonts\glyphicons-halflings-regular.eot" /> 
       <File Id="glyphicons_halflings_regular.svg" Source="$(var.ViewerModule.TargetDir)Police\fonts\glyphicons-halflings-regular.svg" /> 
       <File Id="glyphicons_halflings_regular.woff" Source="$(var.ViewerModule.TargetDir)Police\fonts\glyphicons-halflings-regular.woff" /> 
      </Component> 
      <Component Id="CMP_WebsiteFonts2" Guid="{********-BFFE-441D-B8F4-156DD596B09F}" KeyPath="yes"> 
       <File Id="glyphicons_halflings_regular.ttf" Source="$(var.ViewerModule.TargetDir)Police\fonts\glyphicons-halflings-regular.ttf" DefaultVersion="1.001" TrueType="yes" /> 
      </Component> 
    </DirectoryRef> 
</Fragment> 

यह फ़ाइलें जोड़ देगा (आवश्यकतानुसार आंशिक GUIDs की जगह) सही स्थान पर, लेकिन आपके समाधान का निर्माण ICE07 प्रमाणीकरण चेतावनी उत्पन्न करेगा कि इस तथ्य को लेकर चिंतित है कि एक TTF फ़ॉन्ट फ़ाइल को Windows फ़ॉन्ट फ़ोल्डर में जाना चाहिए।

यह देखते हुए कि यह एक वेब फ़ॉन्ट है और यह वहां जाने वाला नहीं है जो बहुत परेशान है, लेकिन शुक्र है क्योंकि यह एक वेब फ़ॉन्ट है जिसे आपको आईई, एज, क्रोम, फ़ायरफ़ॉक्स इत्यादि को खुश करने के लिए कई प्रारूपों में चाहिए ... इसका मतलब है कि आप चेतावनी को खत्म करने के लिए गैर टीटीएफ फ़ॉन्ट वेरिएंट की उपस्थिति का उपयोग कर सकते हैं।

Refactor इस तरह टुकड़ा:

<?xml version="1.0" encoding="UTF-8"?> 
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> 
    <Fragment> 
     <DirectoryRef Id="WebsiteFontsDir"> 
      <Component Id="CMP_WebsiteFonts" Guid="{********-482C-4924-B06E-9FAC34F89D1D}" KeyPath="yes"> 
       <File Id="glyphicons_halflings_regular.eot" Source="$(var.AZViewerModule.TargetDir)fonts\glyphicons-halflings-regular.eot" /> 
       <File Id="glyphicons_halflings_regular.svg" Source="$(var.AZViewerModule.TargetDir)fonts\glyphicons-halflings-regular.svg" /> 
       <File Id="glyphicons_halflings_regular.woff" Source="$(var.AZViewerModule.TargetDir)fonts\glyphicons-halflings-regular.woff" /> 
      </Component> 
      <Component Id="CMP_WebsiteFonts2" Guid="{********-BFFE-441D-B8F4-156DD596B09F}"> 
       <File Id="glyphicons_halflings_regular.ttf" 
        Source="$(var.ViewerModule.TargetDir)fonts\glyphicons-halflings-regular.ttf" 
        TrueType="no" 
        KeyPath="no" 
        CompanionFile="glyphicons_halflings_regular.eot"/> 
      </Component> 
     </DirectoryRef> 
    </Fragment> 
</Wix> 

यहाँ हम अपने एक TTF फ़ॉन्ट इनकार करते हैं, और एक साथी फ़ाइल है कि अन्य वेब फ़ॉन्ट फ़ाइलों में से एक है के साथ प्रदान करते हैं। सब कुछ इंस्टॉल करता है जहां आप उम्मीद करते हैं और ICE07 का उत्पादन नहीं होता है।

+0

मुझे यह पसंद है क्योंकि इसे चेतावनी अक्षम करने की आवश्यकता नहीं है। धन्यवाद! –

संबंधित मुद्दे

 संबंधित मुद्दे