প্রকল্প সম্পর্কে

JXPhotoBrowser হলো iOS অ্যাপ্লিকেশনের জন্য একটি মিডিয়া ব্রাউজিং UI কম্পোনেন্ট। এর মূল ভিত্তি হলো UIKit এবং UICollectionView, যার জন্য iOS 12.0+ এবং Swift 5.4+ প্রয়োজন, এবং এটি ব্রিজিং লেয়ারের মাধ্যমে SwiftUI-তে সংহত করা যায়। কম্পোনেন্টটি ব্যবসায়িক ডেটা মডেলের সাথে আবদ্ধ নয়, এবং কোনো ইমেজ লোডিং লাইব্রেরি অন্তর্ভুক্ত করে না; delegate আইটেম সংখ্যা, গ্রহণ এবং Cell কনফিগারেশন সরবরাহ করে, প্রকৃত ইমেজ লোডিং সংযোগকারী পক্ষের নির্বাচিত লাইব্রেরি দ্বারা সম্পন্ন হয়। ইন্টারঅ্যাকশন এবং ডিসপ্লের দিক থেকে, এটি অনুভূমিক বা উল্লম্ব পূর্ণ-পৃষ্ঠা ব্রাউজিং, ইনফিনিট লুপ, প্রোগ্রাম্যাটিক পেজ জাম্প, পেজ স্পেসিং কনফিগারেশন এবং অটো-ক্যারোসেল সমর্থন করে। ছবি ডাবল-ট্যাপ বা পিঞ্চ করে জুম করা যায়, ডাবল-ট্যাপের ম্যাগনিফিকেশন কনফিগারযোগ্য। ক্লোজ করার পদ্ধতিতে ডাউন-সোয়াইপ জেসচার অন্তর্ভুক্ত, ট্রানজিশন হিসেবে Zoom, Fade বা None বেছে নেওয়া যায়, এবং জুম ট্রানজিশনের সাথে মিলিয়ে থাম্বনেইল ভিউ সরবরাহ করা যায়। উল্লম্ব স্ক্রলিং মোডে ডাউন-সোয়াইপ ক্লোজ সক্রিয় থাকে না। এক্সটেনশন মেকানিজমের মধ্যে কাস্টম Cell এবং Overlay অন্তর্ভুক্ত, README উদাহরণে JXZoomImageCell এবং JXPageIndicatorOverlay ব্যবহার করা হয়েছে। মোডাল ডিসপ্লে ছাড়াও, স্ট্যান্ডার্ড View Controller containment-এর মাধ্যমে ব্রাউজারটিকে এমবেডেড ব্যানার হিসেবে ব্যবহার করা যায়, সেক্ষেত্রে সাধারণত ট্রানজিশন এবং ডাউন-সোয়াইপ জেসচার বন্ধ করে অটো-প্লে কনফিগার করা হয়। ডেটা পরিবর্তনের পরে কম্পোনেন্টের reloadData এন্ট্রি পয়েন্ট কল করা উচিত, সরাসরি অভ্যন্তরীণ collectionView পরিচালনা করা উচিত নয়। ইনস্টলেশন CocoaPods, SwiftPM এবং Carthage সমর্থন করে; ইন্টিগ্রেশন প্যাকেজের সাথে PrivacyInfo.xcprivacy বহন করা হয়, README ঘোষণা করে যে কম্পোনেন্টটি ব্যবহারকারীকে ট্র্যাক করে না, ডেটা সংগ্রহ করে না, এবং Required Reason API ব্যবহার করে না। পরিচিত সীমাবদ্ধতার মধ্যে রয়েছে নির্দিষ্ট পোর্ট্রেট ওরিয়েন্টেশন, ডিভাইস রোটেশন অসমর্থিত, এবং প্রতিটি Cell ব্রাউজারের পূর্ণ-পৃষ্ঠার আকারে স্থির থাকে, 4.1 থেকে আইটেম-ভিত্তিক কাস্টম সাইজ আর সমর্থিত নয়। প্রকল্পটি MIT License-এর অধীনে।