গ্রাফিক্স

একাধিক অ্যান্ড্রয়েড প্ল্যাটফর্ম রিলিজ জুড়ে গ্রাফিক্স সুবিধার সুবিধা

এই টেবিলটি androidx.graphics গ্রুপের সমস্ত শিল্পকর্মের তালিকা করে।

আর্টিফ্যাক্ট স্থিতিশীল রিলিজ প্রার্থী মুক্তি বিটা রিলিজ আলফা রিলিজ
গ্রাফিক্স-কোর 1.0.2 - - -
গ্রাফিক্স-পথ 1.0.1 - - -
গ্রাফিক্স-আকৃতি 1.0.1 - - -
এই লাইব্রেরিটি সর্বশেষ আপডেট করা হয়েছিল: অক্টোবর 16, 2024

নির্ভরতা ঘোষণা করা

গ্রাফিক্সের উপর নির্ভরতা যোগ করতে, আপনাকে অবশ্যই আপনার প্রকল্পে Google Maven সংগ্রহস্থল যোগ করতে হবে। আরও তথ্যের জন্য Google এর Maven সংগ্রহস্থল পড়ুন।

আপনার অ্যাপ বা মডিউলের জন্য build.gradle ফাইলে আপনার প্রয়োজনীয় আর্টিফ্যাক্টগুলির জন্য নির্ভরতা যোগ করুন:

গ্রোভি

dependencies {
    implementation "androidx.graphics:graphics-core:1.0.2"
    implementation "androidx.graphics:graphics-path:1.0.1"
    implementation "androidx.graphics:graphics-shapes:1.0.1"
}

কোটলিন

dependencies {
    implementation("androidx.graphics:graphics-core:1.0.2")
    implementation("androidx.graphics:graphics-path:1.0.1")
    implementation("androidx.graphics:graphics-shapes:1.0.1")
}

নির্ভরতা সম্পর্কে আরও তথ্যের জন্য, বিল্ড নির্ভরতা যুক্ত করুন দেখুন।

প্রতিক্রিয়া

আপনার প্রতিক্রিয়া জেটপ্যাককে আরও ভাল করতে সাহায্য করে। আপনি যদি নতুন সমস্যা আবিষ্কার করেন বা এই লাইব্রেরির উন্নতির জন্য ধারনা পান তাহলে আমাদের জানান। আপনি একটি নতুন তৈরি করার আগে অনুগ্রহ করে এই লাইব্রেরিতে বিদ্যমান সমস্যাগুলি দেখুন৷ আপনি তারকা বোতামে ক্লিক করে একটি বিদ্যমান সমস্যায় আপনার ভোট যোগ করতে পারেন।

একটি নতুন সমস্যা তৈরি করুন

আরও তথ্যের জন্য ইস্যু ট্র্যাকার ডকুমেন্টেশন দেখুন।

এই শিল্পকর্মের জন্য কোন রিলিজ নোট নেই.

গ্রাফিক্স শেপস সংস্করণ 1.0

সংস্করণ 1.0.0

আগস্ট 21, 2024

androidx.graphics:graphics-shapes:1.0.0 , androidx.graphics:graphics-shapes-android:1.0.0 , এবং androidx.graphics:graphics-shapes-desktop:1.0.0 প্রকাশ করা হয়েছে। সংস্করণ 1.0.0 এ এই কমিটগুলি রয়েছে।

সংস্করণ 1.0.0-rc01

জুলাই 24, 2024

androidx.graphics:graphics-shapes:1.0.0-rc01 , androidx.graphics:graphics-shapes-android:1.0.0-rc01 , এবং androidx.graphics:graphics-shapes-desktop:1.0.0-rc01 প্রকাশ করা হয়েছে। সংস্করণ 1.0.0-rc01-এ এই কমিট রয়েছে।

সংস্করণ 1.0.0-beta01

1 মে, 2024

androidx.graphics:graphics-shapes:1.0.0-beta01 , androidx.graphics:graphics-shapes-android:1.0.0-beta01 , এবং androidx.graphics:graphics-shapes-desktop:1.0.0-beta01 প্রকাশ করা হয়েছে। সংস্করণ 1.0.0-beta01-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • একটি ভিন্ন বিন্দুতে শুরু করার জন্য আকারগুলিকে প্রাক-ঘোরানোর অনুমতি দিন। এই পরিবর্তনটি pillStar আকারগুলিকে ঘেরের একটি নন-ডিফল্ট বিন্দু থেকে তাদের বক্ররেখা শুরু করতে দেয়। আকৃতির পথের স্ট্রোকিং অ্যানিমেট করার সময়, আকৃতির রূপরেখাতে একটি নির্দিষ্ট অবস্থান থেকে অঙ্কন শুরু করার জন্য এটি কার্যকর হতে পারে। ( Ifbb4d , b/324303807 )
  • Morph-এ calculateBounds() ফাংশন যোগ করা হয়েছে, যা RoundedPolygon এ একই ফাংশন সমান্তরাল। ( I8a3b6 , b/325463575 )

সংস্করণ 1.0.0-alpha05

7 ফেব্রুয়ারি, 2024

androidx.graphics:graphics-shapes:1.0.0-alpha05 , androidx.graphics:graphics-shapes-android:1.0.0-alpha05 , এবং androidx.graphics:graphics-shapes-desktop:1.0.0-alpha05 প্রকাশ করা হয়েছে। 1.0.0-alpha05 সংস্করণে এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • লাইব্রেরি এখন এই বৃত্তাকার/তারকাযুক্ত আকারগুলি সহজে তৈরি করার জন্য নতুন pill() এবং pillStar() ফাংশন অফার করে। একটি আকৃতির জন্য প্রয়োজনীয় সঠিক সীমাগুলি গণনা করার জন্য নতুন API রয়েছে (আগের সীমাগুলি অন্তর্নিহিত বেজিয়ার বক্ররেখা অ্যাঙ্কর এবং নিয়ন্ত্রণ পয়েন্টগুলির উপর ভিত্তি করে একটি অনুমান ছিল), পাশাপাশি সর্বাধিক সম্ভাব্য সীমা, যা আকার নির্ধারণে সহায়ক হতে পারে যে কন্টেইনারের মধ্যে এটি ঘোরানো হবে যদি এটি ধরে রাখে। ( I71827 )

এপিআই পরিবর্তন

  • এখন সঠিক এবং সর্বোচ্চ সীমানা পুনরুদ্ধারের জন্য আরও বিকল্প। ( I6d49f , b/317286450 )

বাগ ফিক্স

  • শূন্য-দৈর্ঘ্যের বক্ররেখা সম্পর্কিত একটি নিম্ন-স্তরের রেন্ডারিং সমস্যার কারণে এই আকারগুলিকে স্ট্রোকড পাথ হিসাবে আঁকার সময় মাঝে মাঝে রেন্ডারিং আর্টিফ্যাক্ট ছিল। এই বাগটি সমস্ত শূন্য-দৈর্ঘ্যের বক্ররেখাগুলিকে বাদ দিয়ে সংশোধন করা হয়েছিল (যা আকারগুলির প্রয়োজন হয় না, এইভাবে আকারগুলির দ্বারা উত্পাদিত পাথগুলির উপরিভাগে সংরক্ষণ করা হয়)৷

সংস্করণ 1.0.0-alpha04

13 ডিসেম্বর, 2023

androidx.graphics:graphics-shapes:1.0.0-alpha04 , androidx.graphics:graphics-shapes-android:1.0.0-alpha04 , এবং androidx.graphics:graphics-shapes-desktop:1.0.0-alpha04 প্রকাশ করা হয়েছে। সংস্করণ 1.0.0-alpha04 এই কমিট ধারণ করে।

নতুন বৈশিষ্ট্য

  • এই রিলিজে বেশ কিছু API পরিবর্তন রয়েছে, সেইসাথে বাগ সংশোধন করা হয়েছে।
  • অনেক API পরিবর্তন শেপস লাইব্রেরি কেএমপি-বান্ধব করে তোলে। এটি নন-অ্যান্ড্রয়েড কোড (যেমন অ্যান্ড্রয়েড-অ্যাগনস্টিক কম্পোজ কোড) থেকে কল করা সহজ করে তোলে। উদাহরণ স্বরূপ, API-এ কোনো Android প্রকার নেই, যেমন পূর্ববর্তী PointF, Matrix এবং Path প্রকার।
  • কর্মক্ষমতার কারণে APIs এবং বাস্তবায়নে বেশ কিছু পরিবর্তন করা হয়েছে, বিশেষ করে বস্তু বরাদ্দ (এবং সংগ্রহ) কমানোর জন্য। উদাহরণ স্বরূপ, PointF থেকে আলাদা ফ্লোট প্যারামিটারে সরানো অনেক অস্থায়ী PointF স্ট্রাকচারকে সেই শীর্ষবিন্দুগুলো ধরে রাখার জন্য বরাদ্দ এড়িয়ে যায়।

এপিআই পরিবর্তন

  • Morph.asMutableCubics MutableCubics উপর পুনরাবৃত্তি করার জন্য একটি ফাংশন দিয়ে প্রতিস্থাপন করা হয়েছে। পরিবর্তিত PointTransformer কার্যকরী ইন্টারফেস, এখন এটি একটি Point x এবং y স্থানাঙ্ক নেয় এবং একটি TransformedResult প্রদান করে (যা রূপান্তরিত x এবং y স্থানাঙ্ক দিয়ে নির্মিত হয়) ( I6719e )
  • পাবলিক Cubic কনস্ট্রাক্টর সরানো হয়েছে এবং এটি একটি ফ্যাক্টরি ফাংশন তৈরি করেছে। ( I409ce )
  • অ্যান্ড্রয়েড-নির্দিষ্ট রূপান্তর এবং অঙ্কন API যোগ করা ( I079f6 , b/292289543 )
  • অ্যান্ড্রয়েড নির্ভরতা দূর করুন ( Iadc1c , b/292289543 )
  • অ্যাঙ্কর এবং কন্ট্রোল প্রপার্টির নামগুলি এখন আরও বুদ্ধিমান ( If13bd , b/294562941 )
  • PointF প্যারামিটারগুলি Float জোড়ায় পরিবর্তিত হয়েছে ( Id4705 , b/276466399 , b/290254314 )
  • progress এখন সরাসরি Morph অঙ্কন কমান্ডে প্রেরণ করা হয়েছে ( Icdca2 )

বাগ ফিক্স

  • বড় আকার তৈরি করার সময় বাগ সংশোধন করা হয়েছে। ( I4fd66 , b/313497325 )

সংস্করণ 1.0.0-alpha03

7 জুন, 2023

androidx.graphics:graphics-shapes:1.0.0-alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha03 এই কমিট ধারণ করে।

এপিআই পরিবর্তন

  • নতুন RoundedPolygon.rectangle() ফাংশন যোগ করা হয়েছে ( I78e7e , b/280322189 )
  • স্টার এবং সার্কেল ফাংশনগুলিকে এখন ডিকপিটালাইজ করা হয়েছে এবং RoundedPolygon এর সঙ্গী বস্তুর মাধ্যমে বলা হয়েছে: যেমন, RoundedPolygon.star(...) ( I14735 )

বাগ ফিক্স

  • মসৃণ করার বাগ সংশোধন করা হয়েছে ( Ibf894 )
  • শুরু এবং শেষ আকৃতি একই ছিল এমন একটি বাগ সংশোধন করা হয়েছে। কাটার জন্য পাশে উপলব্ধ স্থানটি ভালভাবে বিতরণ করুন, প্রথমে গোলাকার জন্য উপলব্ধ স্থান ব্যবহার করুন, তারপর যদি স্থান অবশিষ্ট থাকে তবে মসৃণ করার জন্য। ( Ibd320 , b/277936300 )

সংস্করণ 1.0.0-alpha02

এপ্রিল 19, 2023

androidx.graphics:graphics-shapes:1.0.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha02 এই কমিট ধারণ করে।

এপিআই পরিবর্তন

  • বহুভুজ সুপারক্লাসকে এর সাবক্লাস, RoundedPolygon সাথে একীভূত করা হয়েছিল; সমস্ত বহুভুজ এখন [ঐচ্ছিকভাবে] গোলাকার বহুভুজ।
  • স্টার ফাংশন (যা এখনও আগের মতই একটি RoundedPolygon প্রদান করে) এখন পূর্ববর্তী innerRadiusRatio প্যারামিটারের পরিবর্তে একটি innerRadius মান নেয়। এটি বিদ্যমান ব্যাসার্ধ প্যারামিটারের মতো একই ইউনিটে রয়েছে, যা জিনিসগুলিকে সহজ এবং আরও সামঞ্জস্যপূর্ণ করে তোলে। এছাড়াও, numOuterVertices প্যারামিটারের নাম পরিবর্তন করে numVerticesPerRadius করা হয়েছে যে একই সংখ্যাটি ভিতরের এবং বাইরের উভয় ব্যাসার্ধে প্রয়োগ করা হয়েছে।
  • CornerRounding.radius পূর্বে বহুভুজের আকারের সাথে আপেক্ষিক হিসাবে নথিভুক্ত করা হয়েছিল, কিন্তু এটি একটি পরম, আপেক্ষিক নয়, মান ছিল (এবং হওয়া উচিত)। দস্তাবেজগুলি আপডেট করা হয়েছে এবং এটিকে সর্বোচ্চ 1.0 মানের মধ্যে সীমাবদ্ধ টীকা স্থির করা হয়েছে৷

সংস্করণ 1.0.0-alpha01

5 এপ্রিল, 2023

গ্রাফিক্স-শেপস একটি নতুন লাইব্রেরি যা বৃত্তাকার বহুভুজ আকারের সহজে তৈরি এবং রেন্ডারিং, সেইসাথে বিভিন্ন আকারের মধ্যে সহজ এবং স্বয়ংক্রিয় মরফিং (অ্যানিমেশন) করার অনুমতি দেয়।

androidx.graphics:graphics-shapes:1.0.0-alpha01 প্রকাশিত হয়েছে। এই সংস্করণটি একটি অভ্যন্তরীণ শাখা থেকে প্রকাশিত হয়েছিল।

নতুন বৈশিষ্ট্য

  • কাঙ্খিত সংখ্যক শীর্ষবিন্দু সহ নিয়মিত এবং তারকা বহুভুজ তৈরি করতে বহুভুজ API ব্যবহার করুন।
  • কোণগুলির জন্য বৃত্তাকার ব্যাসার্ধ এবং মসৃণ করার পরামিতিগুলি নির্দিষ্ট করতে ঐচ্ছিক CornerRounding পরামিতিগুলি ব্যবহার করুন, যার ফলে বৃত্তাকার কোণগুলির সাথে বহুভুজ আকার হয়৷
  • একটি "মর্ফ" আকৃতি স্বয়ংক্রিয়ভাবে গণনা করতে নতুন Morph(Polygon, Polygon) API ব্যবহার করুন যার অগ্রগতি 0 থেকে 1 পর্যন্ত সেট করা যেতে পারে শুরু এবং শেষ আকারগুলির মধ্যে অ্যানিমেট করার জন্য৷ এই নতুন বৃত্তাকার আকারগুলির মধ্যে একটি মসৃণ অ্যানিমেশন তৈরি করতে, সময়ের সাথে সাথে সেই অগ্রগতিটিকে অ্যানিমেট করুন, প্রতিটি ফ্রেমে ফলাফল অঙ্কন করুন৷

গ্রাফিক্স পাথ সংস্করণ 1.0

সংস্করণ 1.0.1

1 মে, 2024

androidx.graphics:graphics-path:1.0.1 প্রকাশিত হয়েছে। সংস্করণ 1.0.1-এ এই কমিটগুলি রয়েছে।

বাগ ফিক্স

  • কম্পাইলার পতাকা উন্নতি.

সংস্করণ 1.0.0

6 মার্চ, 2024

androidx.graphics:graphics-path:1.0.0 প্রকাশিত হয়েছে।

সংস্করণ 1.0.0-rc01

21 ফেব্রুয়ারি, 2024

androidx.graphics:graphics-path:1.0.0-rc01 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-rc01 এই কমিট ধারণ করে।

বাগ ফিক্স

  • API <34 ( Id4629 ) এ PathIterator-এর কর্মক্ষমতা উন্নত করুন

সংস্করণ 1.0.0-beta02

জানুয়ারী 10, 2024

এই রিলিজে পরিবর্তনগুলি লাইব্রেরির আকার হ্রাস করার বিষয়ে ছিল, যা নেটিভ কোড দ্বারা তৈরি অনুমানের কারণে প্রয়োজনের চেয়ে বড় ছিল।

androidx.graphics:graphics-path:1.0.0-beta02 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-beta02-এ এই কমিট রয়েছে।

বাগ ফিক্স

  • libandroidx.graphics.path.so এর আকার 96% কমানো হয়েছে। ( I71397 )
  • libandroidx.graphics.path.so এর আকার 5% কমিয়ে দিন। ( I2da7c )
  • androidx.graphics:graphics-path এর নেটিভ কম্পোনেন্ট 43% সঙ্কুচিত করুন। ( I8e40d )

সংস্করণ 1.0.0-beta01

নভেম্বর 29, 2023

androidx.graphics:graphics-path:1.0.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-beta01-এ এই কমিট রয়েছে।

এপিআই পরিবর্তন

  • পরীক্ষামূলক isAtLeastU() API ( Ie9117 , b/289269026 ) এর ব্যবহারগুলি সরানো হয়েছে

বাগ ফিক্স

  • লাইব্রেরি কনিকের সাথে কীভাবে ডিল করে তা সহ বিভিন্ন সংশোধন এবং কর্মক্ষমতার উন্নতি।

সংস্করণ 1.0.0-alpha02

7 জুন, 2023

androidx.graphics:graphics-path:1.0.0-alpha02 প্রকাশিত হয়েছে। এই সংস্করণটি একটি অভ্যন্তরীণ শাখায় তৈরি করা হয়েছে।

নতুন বৈশিষ্ট্য

  • অভ্যন্তরীণ প্ল্যাটফর্ম সংস্করণ চেকের সমস্যা সমাধান করা হয়েছে যা অ্যান্ড্রয়েড 14 প্রিভিউতে চলার সময় সমস্যার সৃষ্টি করে (সংস্করণ চেক ব্যর্থ হবে, তবে বিশেষত Android 14-এ পূর্ববর্তী রিলিজে কাজ করার প্রক্রিয়া সঠিকভাবে কাজ করে না)।

সংস্করণ 1.0.0-alpha01

22 মার্চ, 2023

androidx.graphics:graphics-path:1.0.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha01-এ এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • এই নতুন লাইব্রেরি নতুন PathIterator API এর মাধ্যমে পাথ ডেটা অনুসন্ধানের অনুমতি দেয়। এই API ব্যবহার করে, কলকারীরা সেই অংশগুলির অপারেশন এবং ডেটা নির্ধারণ করতে একটি পাথ অবজেক্টের সমস্ত অংশের মাধ্যমে পুনরাবৃত্তি করতে পারে।
  • লাইব্রেরি অ্যান্ড্রয়েড 14 প্রিভিউতে প্রবর্তিত অনুরূপ API ব্যবহার করে, তবে API-এর এই AndroidX সংস্করণটি API 21-এর সংস্করণগুলিতেও কাজ করে।

গ্রাফিক্স কোর সংস্করণ 1.0

সংস্করণ 1.0.2

অক্টোবর 16, 2024

androidx.graphics:graphics-core:1.0.2 প্রকাশিত হয়েছে। সংস্করণ 1.0.2-এ এই কমিটগুলি রয়েছে।

বাগ ফিক্স

  • স্থির সমস্যা যেখানে SurfaceControl দৃষ্টান্তগুলি মুক্তি পাওয়ার পরেও সিস্টেম কম্পোজিটর দ্বারা পরিচালিত হবে৷
  • স্থির সমস্যা যেখানে বর্তমানে উপস্থাপিত HardwareBuffer ইনস্ট্যান্স কম লেটেন্সি নির্ভরতা নিষ্পত্তি হওয়ার পরে প্রকাশ করা হবে না
  • নির্দিষ্ট Android 14+ ডিভাইসে স্থির ফ্লিকারিং সমস্যা যা সামনের বাফার ব্যবহারের পতাকা সমর্থন করে না

সংস্করণ 1.0.1

4 সেপ্টেম্বর, 2024

androidx.graphics:graphics-core:1.0.1 প্রকাশিত হয়েছে। সংস্করণ 1.0.1-এ এই কমিটগুলি রয়েছে।

বাগ ফিক্স

  • স্থির সমস্যা যেখানে মেমরি সংস্থান মাঝে মাঝে প্রকাশ করা হবে না।

সংস্করণ 1.0.0

29 মে, 2024

androidx.graphics:graphics-core:1.0.0 প্রকাশিত হয়েছে। সংস্করণ 1.0.0 এ এই কমিটগুলি রয়েছে।

1.0.0 এর প্রধান বৈশিষ্ট্য

  • গ্রাফিক্স-কোর লাইব্রেরির অফিসিয়াল স্থিতিশীল প্রকাশ। 1.0.0-rc01 থেকে ছোটখাট বাগ ফিক্স এবং পারফরম্যান্সের উন্নতি অন্তর্ভুক্ত

সংস্করণ 1.0.0-rc01

এপ্রিল 17, 2024

androidx.graphics:graphics-core:1.0.0-rc01 প্রকাশিত হয়েছে। এই সংস্করণটি একটি অভ্যন্তরীণ শাখায় তৈরি করা হয়েছে।

বাগ ফিক্স

  • Android 14 চালিত কিছু Android ডিভাইসের সাথে CanvasBufferedRendererAPI সাথে ফাইল বর্ণনাকারীর সম্ভাব্য ডবল ক্লোজারের দিকে নিয়ে যাওয়া সমস্যার সমাধান করা হয়েছে।
  • স্থির সমস্যা যেখানে FrameBuffer সঠিকভাবে ফ্রেমবাফার দৃষ্টান্ত মুছে ফেলবে না।

সংস্করণ 1.0.0-beta01

13 ডিসেম্বর, 2023

androidx.graphics:graphics-core:1.0.0-beta01 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-beta01-এ এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • ভিউ অনুক্রমের মধ্যে Android এর 2d গ্রাফিক্স এপিআই (ক্যানভাস + পেইন্ট) সহ কম লেটেন্সি রেন্ডারিং সমর্থন করার জন্য একটি নতুন LowLatencyCanvasView API প্রবর্তন করেছে৷
  • একটি HardwareBuffer এ হার্ডওয়্যার ত্বরান্বিত ক্যানভাস রেন্ডারিং সমর্থন করার জন্য CanvasBufferedRenderer API প্রবর্তন করা হয়েছে। এটি একটি ব্যবহারকারী ইন্টারফেসের একটি অংশকে একটি বাফারে আঁকতে ব্যবহার করা যেতে পারে যা Bitmap.wrapHardwareBuffer API ব্যবহার করে একটি বিটম্যাপে রূপান্তরিত হতে পারে।

এপিআই পরিবর্তন

  • একটি ঐচ্ছিক বেড়া প্যারামিটার থাকতে CanvasBufferRenderer#releaseBuffer API আপডেট করা হয়েছে। RenderResult#fence ফেরত দেওয়া হলে বর্ণনা করার জন্য আপডেট করা ডকুমেন্টেশন। ( if1ea7 )
  • ড্র অনুরোধের সময়সূচী করার জন্য লিভারেজিং কোরোটিন সমর্থন করতে RenderRequestdraw পদ্ধতি যোগ করুন। পূর্ববর্তী ড্র পদ্ধতির নাম পরিবর্তন করা হয়েছে যা একজন নির্বাহককে drawAsync করতে ব্যবহার করেছিল। একটি সম্পত্তিতে রিফ্যাক্টরড isClosed() পদ্ধতি। ( I5bff6 )
  • CanvasFrontBufferRenderer এ বাফার ফরম্যাট প্যারামিটারকে সরাসরি CanvasBufferedRenderer.Builder#setBufferFormat ( I0f272 )
  • একটি HardwareBuffer এ হার্ডওয়্যার ত্বরিত ক্যানভাস রেন্ডারিং পরিচালনা করতে CanvasBufferedRenderer API তৈরি করা হয়েছে। এটি HardwareBuffers সোয়াপচেইন গভীরতার কনফিগারেশনের পাশাপাশি Android Q-এ একটি ব্যাকপোর্টেড বাস্তবায়ন প্রদান করে। ColorSpace কনফিগারেশন এখনও Android U+-এর মধ্যে সীমাবদ্ধ তবে কম্প্যাট বাস্তবায়ন ডেভেলপারদের পক্ষ থেকে নো-অপ আচরণ প্রদান করে। ( I9b1d8 )
  • সীমাহীন বা ডিফল্ট ট্রানজিশনের জন্য পরিবর্তন কৌশলের পাশাপাশি ফ্রেম রেট নিয়ন্ত্রণ করতে SurfaceControlCompat.TransactionsetFrameRate / clearFrameRate API যোগ করুন। ( I6045c )
  • Android T থেকে Android Q-এ setDataSpace এর জন্য প্রয়োজনীয় API স্তর কমানো হয়েছে। ( I59c34 )
  • GLFrameBufferRenderer API-এ onBufferReleased কলব্যাক যোগ করা হয়েছে যাতে কোনো বাফার আর উপস্থাপিত না হলে গ্রাহকদের অবস্থা পরিষ্কার করার সুযোগ দেয় ( I8a4e2 )
  • কম লেটেন্সি সহ রেন্ডারিং বিষয়বস্তুর একটি সাধারণ ব্যবহারের ক্ষেত্রে সমর্থন করতে LowLatencyCanvasView তৈরি করুন যা ভিউ হায়ারার্কি রেন্ডারিংয়ের সাথে সিঙ্ক্রোনাইজ হয়৷ এটি SurfaceView ইনস্ট্যান্সকে অভ্যন্তরীণভাবে পরিচালনা করার মাধ্যমে SurfaceView ব্যবস্থাপনার সাথে সম্পর্কিত জটিলতাগুলিকে প্রশমিত করে যা যথাক্রমে সিঙ্ক্রোনাইজড এবং কম লেটেন্সি রেন্ডারিংয়ের জন্য অফ/স্ক্রিনে অনুবাদ করা হয়। ( I9253b )
  • CanvasFrontBufferedRenderer API এ কালারস্পেস কনফিগারেশন সমর্থন যোগ করা হয়েছে। ব্যাক বাফারযুক্ত SurfaceControl ( I24bd9 ) অন্তর্ভুক্ত করতে মাল্টিবাফারযুক্ত কলব্যাকগুলি আপডেট করা হয়েছে

সংস্করণ 1.0.0-alpha05

6 সেপ্টেম্বর, 2023

androidx.graphics:graphics-core:1.0.0-alpha05 প্রকাশিত হয়েছে। 1.0.0-alpha05 সংস্করণে এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • GLFrameBufferRenderer API চালু করা হয়েছে। এটি OpenGL নির্ভরতা, সোয়াপ চেইন কনফিগারেশন, পিক্সেল ফরম্যাট এবং SurfaceControl কনফিগারেশনের সমন্বয় প্রদান করে। ( IC775b )

এপিআই পরিবর্তন

  • SurfaceHolder#Callbacks থেকে পাইপ ডাইমেনশনে বিভিন্ন কলব্যাক API-এ প্রস্থ + উচ্চতা প্যারামিটার যোগ করা হয়েছে। ( I7f9fc )
  • ফ্রন্ট এবং মাল্টি বাফার উভয় স্তর সাফ করতে পরিষ্কার API যোগ করা হয়েছে। ( IC1f95 )
  • GLFrontBufferedRenderer মধ্যে ব্যবহৃত অন্তর্নিহিত বাফার ধরনের swapchains কনফিগার করার জন্য সমর্থন যোগ করা হয়েছে। ( I07a13 )
  • GLFrameBufferRenderer এ গেটারদের জন্য kotlin বৈশিষ্ট্য যোগ করা হয়েছে, সর্বোচ্চ বাফার এন্ট্রির জন্য IntRange টীকা, এবং HardwareBufferFormart এবং HardwareBufferUsage টীকা যথাক্রমে setFormat / setUsage এর জন্য। ( Ief89e )
  • একটি রিলিজ বেড়া প্রদান করতে SurfaceControl লেনদেনে setBuffer API আপডেট করা হয়েছে। ( আইস১বিবি )
  • ডেটা স্পেস কনফিগার করার পাশাপাশি বর্ধিত উজ্জ্বলতার পরিসর সেট করতে SurfaceControlCompat.Transaction API যোগ করা হয়েছে। ( আইসি৩৭৮ডি )

সংস্করণ 1.0.0-alpha04

7 জুন, 2023

androidx.graphics:graphics-core:1.0.0-alpha04 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha04 এই কমিট ধারণ করে।

নতুন বৈশিষ্ট্য

  • বিদ্যমান OpenGL বাস্তবায়নের পাশাপাশি android.graphics.Canvas API-এর সাহায্যে কম লেটেন্সি গ্রাফিক্সকে সমর্থন করতে CanvasFrontBufferedRenderer চালু করা হয়েছে

এপিআই পরিবর্তন

  • আপডেট করা হয়েছে SurfaceControlCompat.Transaction#setBuffer API যাতে শূন্যযোগ্য HardwareBuffer দৃষ্টান্তগুলি সংশ্লিষ্ট প্ল্যাটফর্ম API ( I173d7 ) কে মিরর করার অনুমতি দেয়
  • ব্যাকিং সোয়াপচেইনে 2টির বেশি বাফার থাকতে পারে বলে মাল্টি বাফারের পরিবর্তে ডাবল বাফার করা রেন্ডারিংকে উল্লেখ করার পদ্ধতিগুলির নাম পরিবর্তন করুন। ( I830d7 )
  • ক্যানভাস এপিআই ব্যবহার করে একটি ফ্রন্ট বাফার রেন্ডারিং সিস্টেমের সুবিধা নিতে 3ps সক্ষম করতে CanvasFrontBufferedRenderer API তৈরি করুন। ( Ibfc29 )

বাগ ফিক্স

  • স্থির সমস্যা যেখানে GLFrontBufferedRenderer সংশ্লিষ্ট কার্যকলাপ পুনরায় শুরু করার পরে সামগ্রী রেন্ডার করবে না।
  • স্থির সমস্যা যেখানে সামনের বাফার কন্টেন্ট অকালে সাফ করা হবে।
  • স্থির সমস্যা যেখানে SurfaceHolder.Callbacks কম লেটেন্সি গ্রাফিক্স এপিআই প্রকাশ করার পরে কলব্যাকগুলি সরানো হবে না।

সংস্করণ 1.0.0-alpha03

22 মার্চ, 2023

androidx.graphics:graphics-core:1.0.0-alpha03 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha03 এই কমিট ধারণ করে।

এপিআই পরিবর্তন

  • BufferInfo অবজেক্ট প্রদান করতে আপডেট করা হয়েছে GLFrontBufferedRenderer কলব্যাক বাস্তবায়ন যাতে একটি ফ্রেম বাফার শনাক্তকারী সহ বাফার প্রস্থ/উচ্চতা রয়েছে যা একটি মধ্যবর্তী স্ক্র্যাচ বাফারে রেন্ডার করার পরে মূল গন্তব্যকে পুনরায় লক্ষ্য করতে ব্যবহার করা যেতে পারে। ( I7fe20 )
  • SyncFenceCompat এ স্ট্যাটিক ফ্যাক্টরি পদ্ধতিতে একত্রিত SyncFence তৈরি।
  • SyncFence তৈরির জন্য SyncFenceCompat ফ্যাক্টরি পদ্ধতির পক্ষে eglDupNativeFenceFDANDROID এর জন্য সর্বজনীন সামঞ্জস্য পদ্ধতি সরানো হয়েছে৷ এটি নিশ্চিত করার জন্য যে সমস্ত API পৃষ্ঠতলগুলি API স্তর নির্বিশেষে সঠিক SyncFence বাস্তবায়ন পেয়েছে৷ ( I849bb )
  • FrameBufferRenderer এবং SyncStrategy এর জন্য ডকুমেন্টেশন যোগ করা হয়েছে।
    • FrameBufferRenderer + FrameBuffer + FrameBufferPool androidx.graphics.opengl প্যাকেজে সরানো হয়েছে
    • SyncStrategy কে androidx.graphics.opengl প্যাকেজে সরানো হয়েছে
    • RenderCallback#onDraw ডক্স আপডেট করা হয়েছে
    • RenderCallback#obtainFrameBuffer এর আপডেট করা ডকুমেন্টেশন যে API এর বাস্তবায়নকারী FrameBuffer.close কল করার জন্য দায়ী
    • ডিসপ্লেতে বিষয়বস্তু পাঠানোর জন্য ভোক্তারা দায়ী তা বোঝাতে onDrawComplete আপডেট করা হয়েছে
    • ফ্রেমওয়ার্ক মিরর করতে SyncFence সামঞ্জস্যপূর্ণ ইন্টারফেস/ক্লাসগুলিকে androidx.hardware প্যাকেজে সরানো হয়েছে
    • SyncFence API-এর নাম পরিবর্তন করে SyncFenceV19 করা হয়েছে এবং SyncFenceCompat এ ব্যবহারগুলি একত্রিত করার জন্য ব্যক্তিগত করা হয়েছে যা যেখানেই সম্ভব ফ্রেমওয়ার্কের SyncFence API ব্যবহার করে। ( I5149c )
  • যোগ করা হয়েছে GLFrontBufferedRenderer#cancel এবং GLFrontBufferedRenderer#execute পদ্ধতি। প্রাক্তনটি পাম প্রত্যাখ্যানের পরিস্থিতিতে কার্যকর যেখানে সামনের বাফারে রেন্ডারিং বাতিল করা উচিত এবং সামনের বাফারটি লুকিয়ে রাখা উচিত। পরবর্তীটি রেন্ডারের সময়সূচী না করেই জিএল থ্রেডে বস্তুগুলিকে ম্যানিপুলেট করার পরিস্থিতিতে উপযোগী। ( if0b7f )
  • ডাবল বাফার লেয়ারে সরাসরি রেন্ডার করতে API যোগ করুন। এটি সারসংকলনের পরে একটি দৃশ্যকে পুনরায় রেন্ডার করতে সহায়তা করে এবং সেইসাথে রেন্ডার করার জন্য পছন্দসই দৃশ্যের উপর ভিত্তি করে গতিশীলভাবে সামনের বাফার রেন্ডারিং কখন লিভারেজ করতে হবে তা নির্ধারণ করার জন্য ভোক্তাদেরকে একটি সুযোগ দেয়। ( Ied56c )
  • একটি SurfaceView থেকে বিদ্যমান প্রক্রিয়া ছাড়াও অন্য SurfaceControl উদাহরণ থেকে প্যারেন্ট SurfaceControl কনফিগার করতে সহায়তা করার জন্য SurfaceControlCompat.Builder এ নতুন API যোগ করা হয়েছে। ( I1d1b6 )
  • অবনমন-লুকানো ফাংশনগুলির আরও রিটার্ন টাইপ বাতিলযোগ্যতা ( Ibf7b0 )
  • EGL_ANDROID_get_native_client_buffer এক্সটেনশন যোগ করা হয়েছে জিজ্ঞাসা করার জন্য যে Android ডিভাইস EGLClientBuffer অবজেক্টে HardwareBuffer দৃষ্টান্ত আমদানি করা সমর্থন করে কিনা যা একটি EGLImage উদাহরণ হিসাবে ব্যবহার করা যেতে পারে। ( Iad767 )
  • @JvmDefaultWithCompatibility টীকা যোগ করা হচ্ছে ( I8f206 )

সংস্করণ 1.0.0-alpha02

9 নভেম্বর, 2022

androidx.graphics:graphics-core:1.0.0-alpha02 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha02 এই কমিট ধারণ করে।

এপিআই পরিবর্তন

  • Android S ( I0a035 ) এ প্রবর্তিত addTransactionCommitListener এর জন্য RequiresApi টীকা মিস করা হয়েছে।
  • ট্রান্সফর্ম ম্যাট্রিক্স প্রদানের জন্য onDraw<Front/Double> বাফার কলব্যাকগুলিতে আপডেট করা হয়েছে যা গ্রাহকরা বর্তমান বাফার প্রস্থ/উচ্চতা ছাড়াও তাদের শীর্ষবিন্দুতে পাস করতে পারে। ভোক্তারা তাদের OpenGL রেন্ডারিং কোডকে সঠিকভাবে প্রি-রোটেট করার জন্য এই প্যারামিটারগুলি ব্যবহার করার জন্য দায়ী। ( I82f9e )

বাগ ফিক্স

  • SurfaceControl লেনদেন জারি করার আগে প্রি-রোটেটিং বাফার দ্বারা উন্নত গ্রাফিক্স লেটেন্সি।
  • স্থির সমস্যা যেখানে ত্রুটি লগ ত্রুটি 300d (EGL_BAD_SURFACE) দেখাবে।
  • স্থির সমস্যা যেখানে GLFrontBufferedRenderer মধ্যে ব্যবহৃত সংশ্লিষ্ট কার্যকলাপ পুনরায় শুরু করার পরে অবৈধ হবে।
  • এমুলেটর এবং ChromeOS ডিভাইসের জন্য বর্ধিত সমর্থন।
  • স্থির সমস্যা যেখানে সামনের বাফার স্তরটি অকালে লুকিয়ে থাকতে পারে৷

সংস্করণ 1.0.0-alpha01

24 অক্টোবর, 2022

androidx.graphics:graphics-core:1.0.0-alpha01 প্রকাশিত হয়েছে। সংস্করণ 1.0.0-alpha01-এ এই কমিট রয়েছে।

নতুন বৈশিষ্ট্য

  • গ্রাফিক্স কোর AndroidX লাইব্রেরির প্রাথমিক প্রকাশ। স্টাইলাস ইনপুটের মতো কম লেটেন্সি ব্যবহারের ক্ষেত্রে সমর্থন করার জন্য এর মধ্যে API অন্তর্ভুক্ত রয়েছে। এটি ওপেনজিএল ব্যবহারের জন্য কিছু সহায়ক এপিআই প্রবর্তন করে।

এপিআই পরিবর্তন

  • কম লেটেন্সি এবং উচ্চ মানের রেন্ডারিং আউটপুট উভয়ই অর্জন করতে সামনে এবং মাল্টি-বাফার রেন্ডারিং-এ সহায়তা করার জন্য GLFrontBufferedRenderer প্রবর্তন করে।
  • বিভিন্ন সারফেস প্রদানকারী যেমন SurfaceView , TextureView এবং অন্যান্যদের জন্য OpenGL রেন্ডারিং-এ সহায়তা করার জন্য GLRenderer API প্রবর্তন করে।