-1
private static void UpdateFontSettings(WordprocessingDocument content, WordprocessingDocument template)
{
if (content != null && content.MainDocumentPart != null && content.MainDocumentPart.FontTablePart != null &&
template != null && template.MainDocumentPart != null && template.MainDocumentPart.FontTablePart != null)
{
IEnumerable<OpenXmlPart> partsToDelete = from idPartPair in content.MainDocumentPart.FontTablePart.Parts
select idPartPair.OpenXmlPart;
content.MainDocumentPart.FontTablePart.DeleteParts(partsToDelete);
StreamReader streamReader = null;
StreamWriter streamWriter = null;
try
{
streamReader = new StreamReader(template.MainDocumentPart.FontTablePart.GetStream());
streamWriter = new StreamWriter(content.MainDocumentPart.FontTablePart.GetStream(FileMode.Create));
}
catch
{
if (streamReader != null)
{
streamReader.Close();
}
throw;
}
using (streamWriter)
{
streamWriter.Write(streamReader.ReadToEnd());
}
if (streamReader != null)
{
streamReader.Close();
}
}
}
예외는 어디에서 발생합니까? –
손상된 콘텐츠를 제공하는 경우 __yes__에 이상이 있습니다. 무엇이 잘못되었는지, 왜 틀렸다고 생각하는지, 그리고 그렇게해야한다고 생각할 때를 말해야합니다. – unholysampler
또한 try..catch 블록에서 using (streamWriter) 부분을 사용하면 streamReader를 닫을 수 있습니다. –