Browse our Products

Aspose.PDF for C++ 24.10 Release Notes

Changes and Improvements

The new version of Aspose.PDF for C++ has a codebase of Aspose.PDF for .Net 24.10.

The loading of CDR images is implemented.

    auto doc = System::MakeObject<Document>(u"example.cdr"), System::MakeObject<CdrLoadOptions>());
    doc->Save(u"example.pdf");

Public API and Backward Incompatible Changes

Added APIs

  • bool Aspose::Pdf::Drawing::Arc::CheckBounds(double, double);

  • bool Aspose::Pdf::Drawing::Circle::CheckBounds(double, double);

  • bool Aspose::Pdf::Drawing::Curve::CheckBounds(double, double);

  • bool Aspose::Pdf::Drawing::Ellipse::CheckBounds(double, double);

  • bool Aspose::Pdf::Drawing::Line::CheckBounds(double, double);

  • bool Aspose::Pdf::Drawing::Path::CheckBounds(double, double);

  • bool Aspose::Pdf::Drawing::Rectangle::CheckBounds(double, double);

  • bool Aspose::Pdf::Drawing::Shape::CheckBounds(double, double);

  • System::SharedPtr<Aspose::Pdf::Generator::BoundsCheckableList<Aspose::Pdf::Drawing::Shape>> Aspose::Pdf::Drawing::Graph::get_Shapes();

  • enum class Aspose::Pdf::Generator::BoundsCheckMode

    • Default = 0
    • ThrowExceptionIfDoesNotFit = 1
  • template<typename T> class BoundsCheckableList : public System::Collections::Generic::IList<T>

    • using iterator_holder_type = System::Collections::Generic::List<T>;
    • using iterator = typename iterator_holder_type::iterator;
    • using const_iterator = typename iterator_holder_type::const_iterator;
    • BoundsCheckableList();
    • BoundsCheckableList(BoundsCheckMode boundsCheckMode, double containerWidth, double containerHeight);
    • int32_t get_Count() const override;
    • bool get_IsReadOnly() const override;
    • void Add(const T& item) override;
    • System::SharedPtr<System::Collections::Generic::IEnumerator<T>> GetEnumerator() override;
    • void Clear() override;
    • bool Contains(const T& item) const override;
    • void CopyTo(System::ArrayPtr<T> array, int32_t arrayIndex) override;
    • bool Remove(const T& item) override;
    • int32_t IndexOf(const T& item) const override;
    • void Insert(int32_t index, const T& item) override;
    • void RemoveAt(int32_t index) override;
    • T idx_get(int32_t index) const override;
    • void idx_set(int32_t index, T value) override;
    • void UpdateBoundsCheckMode(BoundsCheckMode boundsCheckMode, double containerWidth, double containerHeight);
    • void UpdateBoundsCheckMode(BoundsCheckMode boundsCheckMode);
    • iterator begin() noexcept;
    • iterator end() noexcept;
    • const_iterator begin() const noexcept;
    • const_iterator end() const noexcept;
    • const_iterator cbegin() const noexcept;
    • const_iterator cend() const noexcept;
  • Aspose::Pdf::Generator::BoundsOutOfRangeException

  • class IBoundsCheckableItem : public virtual System::Object

    • virtual bool CheckBounds(double containerWidth, double containerHeight) = 0;
  • void AddImage(System::SharedPtr<System::IO::Stream> imageStream, System::SharedPtr<Aspose::Pdf::Rectangle> imageRect, System::SharedPtr<Aspose::Pdf::Rectangle> bbox = nullptr);

  • void AddImage(System::String hocr, System::SharedPtr<System::IO::Stream> imageStream, System::SharedPtr<Aspose::Pdf::Rectangle> imageRect, System::SharedPtr<Aspose::Pdf::Rectangle> bbox = nullptr);

  • void AddImage(System::SharedPtr<System::IO::Stream> imageStream, System::SharedPtr<Aspose::Pdf::Rectangle> imageRect, int32_t imageWidth, int32_t imageHeight, bool saveImageProportions, System::SharedPtr<Aspose::Pdf::Rectangle> bbox = nullptr);

  • bool Aspose::Pdf::Rectangle::Contains(System::SharedPtr<Aspose::Pdf::Point>, bool);

Removed APIs

  • System::Collections::Generic::List<Aspose::Pdf::Drawing::Shape> Aspose::Pdf::Drawing::Graph::get_Shapes();

  • void AddImage(System::SharedPtr<System::IO::Stream> imageStream, System::SharedPtr<Aspose::Pdf::Rectangle> imageRect);

  • void AddImage(System::String hocr, System::SharedPtr<System::IO::Stream> imageStream, System::SharedPtr<Aspose::Pdf::Rectangle> imageRect);

  • void AddImage(System::SharedPtr<System::IO::Stream> imageStream, System::SharedPtr<Aspose::Pdf::Rectangle> imageRect, int32_t imageWidth, int32_t imageHeight, bool saveImageProportions);

  • bool Aspose::Pdf::Rectangle::Contains(System::SharedPtr<Aspose::Pdf::Point>);

Complete details of API can be referenced from Aspose.PDF for C++ API Reference Guide.