XpsResource 類別

定義

定義資源的基底類別,這些資源可以加入至 XpsDocumentDefines the base class for resources that can be added to an XpsDocument.

public ref class XpsResource : System::Windows::Xps::Packaging::XpsPartBase, IDisposable
public class XpsResource : System.Windows.Xps.Packaging.XpsPartBase, IDisposable
type XpsResource = class
    inherit XpsPartBase
    interface IDisposable
Public Class XpsResource
Inherits XpsPartBase
Implements IDisposable
繼承
XpsResource
衍生
實作

範例

下列範例示範如何將 XpsResource 衍生類型加入 XpsDocumentThe following example shows how to add XpsResource derived types to an XpsDocument.

// -------------------------- AddPageResources ----------------------------
Dictionary<System::String^,List<XpsResource^>^>^ AddPageResources (IXpsFixedPageWriter^ fixedPageWriter) 
{
   // Collection of all resources for this page.
   //   Key: "XpsImage", "XpsFont"
   //   Value: List of XpsImage or XpsFont
   Dictionary<System::String^,List<XpsResource^>^>^ resources = gcnew Dictionary<System::String^,List<XpsResource^>^>();

   // Collections of images and fonts used in the current page.
   List<XpsResource^>^ xpsImages = gcnew List<XpsResource^>();
   List<XpsResource^>^ xpsFonts = gcnew List<XpsResource^>();

   try
   {
      XpsImage^ xpsImage;
      XpsFont^ xpsFont;

      // Add, Write, and Commit image1 to the current page.
      xpsImage = fixedPageWriter->AddImage(XpsImageType::JpegImageType);
      WriteToStream(xpsImage->GetStream(), image1);
      xpsImage->Commit();
      xpsImages->Add(xpsImage);    // Add image1 as a required resource.

      // Add, Write, and Commit font 1 to the current page.
      xpsFont = fixedPageWriter->AddFont();
      WriteObfuscatedStream(xpsFont->Uri->ToString(), xpsFont->GetStream(), font1);
      xpsFont->Commit();
      xpsFonts->Add(xpsFont);      // Add font1 as a required resource.

      // Add, Write, and Commit image2 to the current page.
      xpsImage = fixedPageWriter->AddImage(XpsImageType::TiffImageType);
      WriteToStream(xpsImage->GetStream(), image2);
      xpsImage->Commit();
      xpsImages->Add(xpsImage);    // Add image2 as a required resource.

      // Add, Write, and Commit font2 to the current page.
      xpsFont = fixedPageWriter->AddFont(false);
      WriteToStream(xpsFont->GetStream(), font2);
      xpsFont->Commit();
      xpsFonts->Add(xpsFont);      // Add font2 as a required resource.

      // Return the image and font resources in a combined collection.
      resources->Add("XpsImage", xpsImages);
      resources->Add("XpsFont", xpsFonts);
      return resources;
   } catch (XpsPackagingException^ xpsException)
   {
      throw xpsException;

   } 
};// end:AddPageResources()
// -------------------------- AddPageResources ----------------------------
private Dictionary<string, List<XpsResource>>
        AddPageResources(IXpsFixedPageWriter fixedPageWriter)
{
    // Collection of all resources for this page.
    //   Key: "XpsImage", "XpsFont"
    //   Value: List of XpsImage or XpsFont
    Dictionary<string, List<XpsResource>> resources =
        new Dictionary<string, List<XpsResource>>();

    // Collections of images and fonts used in the current page.
    List<XpsResource> xpsImages = new List<XpsResource>();
    List<XpsResource> xpsFonts  = new List<XpsResource>();

    try
    {
        XpsImage xpsImage;
        XpsFont  xpsFont;

        // Add, Write, and Commit image1 to the current page.
        xpsImage = fixedPageWriter.AddImage(XpsImageType.JpegImageType);
        WriteToStream(xpsImage.GetStream(), image1);
        xpsImage.Commit();
        xpsImages.Add(xpsImage);    // Add image1 as a required resource.

        // Add, Write, and Commit font 1 to the current page.
        xpsFont = fixedPageWriter.AddFont();
        WriteObfuscatedStream(
            xpsFont.Uri.ToString(), xpsFont.GetStream(), font1);
        xpsFont.Commit();
        xpsFonts.Add(xpsFont);      // Add font1 as a required resource.

        // Add, Write, and Commit image2 to the current page.
        xpsImage = fixedPageWriter.AddImage(XpsImageType.TiffImageType);
        WriteToStream(xpsImage.GetStream(), image2);
        xpsImage.Commit();
        xpsImages.Add(xpsImage);    // Add image2 as a required resource.

        // Add, Write, and Commit font2 to the current page.
        xpsFont = fixedPageWriter.AddFont(false);
        WriteToStream(xpsFont.GetStream(), font2);
        xpsFont.Commit();
        xpsFonts.Add(xpsFont);      // Add font2 as a required resource.

        // Return the image and font resources in a combined collection.
        resources.Add("XpsImage", xpsImages);
        resources.Add("XpsFont", xpsFonts);
        return resources;
    }
    catch (XpsPackagingException xpsException)
    {
        throw xpsException;
    }
}// end:AddPageResources()
' -------------------------- AddPageResources ----------------------------
Private Function AddPageResources(ByVal fixedPageWriter As IXpsFixedPageWriter) As Dictionary(Of String, List(Of XpsResource))
    ' Collection of all resources for this page.
    '   Key: "XpsImage", "XpsFont"
    '   Value: List of XpsImage or XpsFont
    Dim resources As New Dictionary(Of String, List(Of XpsResource))()

    ' Collections of images and fonts used in the current page.
    Dim xpsImages As New List(Of XpsResource)()
    Dim xpsFonts As New List(Of XpsResource)()

    Try
        Dim xpsImage As XpsImage
        Dim xpsFont As XpsFont

        ' Add, Write, and Commit image1 to the current page.
        xpsImage = fixedPageWriter.AddImage(XpsImageType.JpegImageType)
        WriteToStream(xpsImage.GetStream(), image1)
        xpsImage.Commit()
        xpsImages.Add(xpsImage) ' Add image1 as a required resource.

        ' Add, Write, and Commit font 1 to the current page.
        xpsFont = fixedPageWriter.AddFont()
        WriteObfuscatedStream(xpsFont.Uri.ToString(), xpsFont.GetStream(), font1)
        xpsFont.Commit()
        xpsFonts.Add(xpsFont) ' Add font1 as a required resource.

        ' Add, Write, and Commit image2 to the current page.
        xpsImage = fixedPageWriter.AddImage(XpsImageType.TiffImageType)
        WriteToStream(xpsImage.GetStream(), image2)
        xpsImage.Commit()
        xpsImages.Add(xpsImage) ' Add image2 as a required resource.

        ' Add, Write, and Commit font2 to the current page.
        xpsFont = fixedPageWriter.AddFont(False)
        WriteToStream(xpsFont.GetStream(), font2)
        xpsFont.Commit()
        xpsFonts.Add(xpsFont) ' Add font2 as a required resource.

        ' Return the image and font resources in a combined collection.
        resources.Add("XpsImage", xpsImages)
        resources.Add("XpsFont", xpsFonts)
        Return resources
    Catch xpsException As XpsPackagingException
        Throw xpsException
    End Try
End Function ' end:AddPageResources()

屬性

Uri

取得或設定組件的統一資源識別項 (URI)。Gets or sets the uniform resource identifier (URI) of the part.

(繼承來源 XpsPartBase)

方法

Commit()

認可所有變更,並將資源排清到文件套件。Commits all changes and flushes the resource to the document package.

Equals(Object)

判斷指定的物件是否等於目前的物件。Determines whether the specified object is equal to the current object.

(繼承來源 Object)
GetHashCode()

做為預設雜湊函式。Serves as the default hash function.

(繼承來源 Object)
GetStream()

在衍生類別中覆寫時,會傳回用於讀取或寫入資源的 I/O 資料流。When overridden in a derived class, returns the I/O stream for reading or writing the resource.

GetType()

取得目前執行個體的 TypeGets the Type of the current instance.

(繼承來源 Object)
MemberwiseClone()

建立目前 Object 的淺層複本 (Shallow Copy)。Creates a shallow copy of the current Object.

(繼承來源 Object)
RelativeUri(Uri)

傳回與指定之絕對 URI 相關資源的 URI。Returns the URI of the resource that is relative to a specified absolute URI.

ToString()

傳回代表目前物件的字串。Returns a string that represents the current object.

(繼承來源 Object)

明確介面實作

IDisposable.Dispose()

此成員支援 Windows Presentation Foundation 基礎結構,但並不適合直接透過您的程式碼使用。This member supports the Windows Presentation Foundation infrastructure and is not intended to be used directly from your code.

適用於

另請參閱