এই পৃষ্ঠাটি আপনাকে Google Docs API ব্যবহার করে কীভাবে টেক্সট ফর্ম্যাট করতে হয় তা বলবে।
বিন্যাস সম্পর্কে
আপনার ডকুমেন্টের টেক্সট কন্টেন্টে দুটি ভিন্ন ধরণের ফর্ম্যাটিং প্রয়োগ করা যেতে পারে:
- আপনি অক্ষর বিন্যাস পরিবর্তন করতে পারেন যেমন ফন্ট, রঙ, অথবা আন্ডারলাইনিং।
- আপনি অনুচ্ছেদের বিন্যাস পরিবর্তন করতে পারেন যেমন ইন্ডেন্টেশন বা লাইন স্পেসিং।
অক্ষর বিন্যাস পরিবর্তন করা হচ্ছে
অক্ষর বিন্যাস আপনার নথিতে পাঠ্য অক্ষরের রেন্ডারিং নির্ধারণ করে।
আপনার প্রয়োগ করা যেকোনো ফর্ম্যাটিং অন্তর্নিহিত অনুচ্ছেদের TextStyle থেকে প্রাপ্ত ডিফল্ট ফর্ম্যাটিংকে ওভাররাইড করে। বিপরীতভাবে, যে অক্ষরের ফর্ম্যাটিং আপনি সেট করেন না সেগুলি অনুচ্ছেদের স্টাইল থেকে উত্তরাধিকারসূত্রে পাওয়া অব্যাহত রাখে।
টেক্সটের ক্যারেক্টার ফর্ম্যাটিং পরিবর্তন করতে, UpdateTextStyleRequest এর সাথে batchUpdate ব্যবহার করুন। আপনাকে একটি Range অবজেক্ট প্রদান করতে হবে যাতে নিম্নলিখিত তথ্য অন্তর্ভুক্ত থাকে:
- একটি
segmentIdযা কোন হেডার, ফুটার, ফুটনোট—অথবা, যদি নির্দিষ্ট না করা থাকে, তাহলে বডি—এ টেক্সটটি রয়েছে তা শনাক্ত করে। -
startIndexএবংendIndexযা ফর্ম্যাট করা অংশের মধ্যে পাঠ্যের পরিসর নির্ধারণ করে। - একটি
tabIdযা কোন ট্যাবে লেখাটি রয়েছে তা শনাক্ত করে।
নিচের উদাহরণটি হেডারে থাকা টেক্সটের উপর বেশ কয়েকটি টেক্সট স্টাইলিং অপারেশন সম্পাদন করে:
- ১-৫ অক্ষরের ফন্টকে বোল্ড ইটালিকসে সেট করে।
- ৬-১০ অক্ষরের রঙ
blue১৪-পয়েন্ট টাইমস নিউ রোমান ফন্টে সেট করে। -
www.example.comএ ১১-১৫ অক্ষরের হাইপারলিঙ্ক।
এটি করার একটি সহজ উপায় হল অনুরোধের একটি তালিকা তৈরি করা এবং তারপর একটি batchUpdate কল ব্যবহার করা:
জাভা
List<Request> requests = new ArrayList<>(); requests.add(new Request().setUpdateTextStyle(new UpdateTextStyleRequest() .setTextStyle(new TextStyle() .setBold(true) .setItalic(true)) .setRange(new Range() .setStartIndex(1) .setEndIndex(5) .setTabId(TAB_ID)) .setFields("bold"))); requests.add(new Request() .setUpdateTextStyle(new UpdateTextStyleRequest() .setRange(new Range() .setStartIndex(6) .setEndIndex(10) .setTabId(TAB_ID)) .setTextStyle(new TextStyle() .setWeightedFontFamily(new WeightedFontFamily() .setFontFamily("Times New Roman")) .setFontSize(new Dimension() .setMagnitude(14.0) .setUnit("PT")) .setForegroundColor(new OptionalColor() .setColor(new Color().setRgbColor(new RgbColor() .setBlue(1.0F) .setGreen(0.0F) .setRed(0.0F))))) .setFields("foregroundColor,weightedFontFamily,fontSize"))); requests.add(new Request() .setUpdateTextStyle(new UpdateTextStyleRequest() .setRange(new Range() .setStartIndex(11) .setEndIndex(15) .setTabId(TAB_ID)) .setTextStyle(new TextStyle() .setLink(new Link() .setUrl("www.example.com"))) .setFields("link"))); BatchUpdateDocumentRequest body = new BatchUpdateDocumentRequest().setRequests(requests); BatchUpdateDocumentResponse response = docsService.documents() .batchUpdate(DOCUMENT_ID, body).execute();
পাইথন
requests = [ { 'updateTextStyle': { 'range': { 'startIndex': 1, 'endIndex': 5, 'tabId': TAB_ID }, 'textStyle': { 'bold': True, 'italic': True }, 'fields': 'bold,italic' } }, { 'updateTextStyle': { 'range': { 'startIndex': 6, 'endIndex': 10, 'tabId': TAB_ID }, 'textStyle': { 'weightedFontFamily': { 'fontFamily': 'Times New Roman' }, 'fontSize': { 'magnitude': 14, 'unit': 'PT' }, 'foregroundColor': { 'color': { 'rgbColor': { 'blue': 1.0, 'green': 0.0, 'red': 0.0 } } } }, 'fields': 'foregroundColor,weightedFontFamily,fontSize' } }, { 'updateTextStyle': { 'range': { 'startIndex': 11, 'endIndex': 15, 'tabId': TAB_ID }, 'textStyle': { 'link': { 'url': 'www.example.com' } }, 'fields': 'link' } } ] result = service.documents().batchUpdate( documentId=DOCUMENT_ID, body={'requests': requests}).execute()
অনুচ্ছেদের বিন্যাস পরিবর্তন করা হচ্ছে
Google Docs API আপনাকে অনুচ্ছেদের ফর্ম্যাটিং আপডেট করতে দেয়, যা নির্ধারণ করে যে আপনার ডকুমেন্টে টেক্সটের ব্লকগুলি কীভাবে রেন্ডার করা হবে, যার মধ্যে অ্যালাইনমেন্ট এবং ইন্ডেন্টেশনের মতো বৈশিষ্ট্যগুলিও অন্তর্ভুক্ত রয়েছে।
আপনার প্রয়োগ করা যেকোনো ফর্ম্যাটিং অন্তর্নিহিত অনুচ্ছেদ শৈলী থেকে প্রাপ্ত ডিফল্ট ফর্ম্যাটিংকে ওভাররাইড করে। বিপরীতভাবে, আপনি যে কোনও ফর্ম্যাটিং বৈশিষ্ট্য সেট করেন না তা অনুচ্ছেদ শৈলী থেকে উত্তরাধিকারসূত্রে পাওয়া অব্যাহত রাখে। অনুচ্ছেদ শৈলী এবং উত্তরাধিকার সম্পর্কে আরও জানতে, ParagraphStyle দেখুন।
নিচের উদাহরণটি একটি অনুচ্ছেদের জন্য নিম্নলিখিত বিন্যাস নির্দিষ্ট করে:
- নামকরণ করা স্টাইল হিসেবে একটি শিরোনাম
- উপরে কাস্টম স্পেসিং
- নিচে কাস্টম স্পেসিং
- একটি কাস্টম বাম সীমানা
অনুচ্ছেদের বাকি সমস্ত বিন্যাস বৈশিষ্ট্যগুলি অন্তর্নিহিত নামযুক্ত শৈলী থেকে উত্তরাধিকারসূত্রে প্রাপ্ত হতে থাকে।
জাভা
List<Request> requests = new ArrayList<>(); requests.add(new Request().setUpdateParagraphStyle(new UpdateParagraphStyleRequest() .setRange(new Range() .setStartIndex(1) .setEndIndex(10) .setTabId(TAB_ID)) .setParagraphStyle(new ParagraphStyle() .setNamedStyleType("HEADING_1") .setSpaceAbove(new Dimension() .setMagnitude(10.0) .setUnit("PT")) .setSpaceBelow(new Dimension() .setMagnitude(10.0) .setUnit("PT"))) .setFields("namedStyleType,spaceAbove,spaceBelow") )); requests.add(new Request().setUpdateParagraphStyle(new UpdateParagraphStyleRequest() .setRange(new Range() .setStartIndex(10) .setEndIndex(20) .setTabId(TAB_ID)) .setParagraphStyle(new ParagraphStyle() .setBorderLeft(new ParagraphBorder() .setColor(new OptionalColor() .setColor(new Color() .setRgbColor(new RgbColor() .setBlue(1.0F) .setGreen(0.0F) .setRed(0.0F) ) ) ) .setDashStyle("DASH") .setPadding(new Dimension() .setMagnitude(20.0) .setUnit("PT")) .setWidth(new Dimension() .setMagnitude(15.0) .setUnit("PT") ) ) ) .setFields("borderLeft") )); BatchUpdateDocumentRequest body = new BatchUpdateDocumentRequest().setRequests(requests); BatchUpdateDocumentResponse response = docsService.documents() .batchUpdate(DOCUMENT_ID, body).execute();
পাইথন
requests = [ { 'updateParagraphStyle': { 'range': { 'startIndex': 1, 'endIndex': 10, 'tabId': TAB_ID }, 'paragraphStyle': { 'namedStyleType': 'HEADING_1', 'spaceAbove': { 'magnitude': 10.0, 'unit': 'PT' }, 'spaceBelow': { 'magnitude': 10.0, 'unit': 'PT' } }, 'fields': 'namedStyleType,spaceAbove,spaceBelow' } }, { 'updateParagraphStyle': { 'range': { 'startIndex': 10, 'endIndex': 20, 'tabId': TAB_ID }, 'paragraphStyle': { 'borderLeft': { 'color': { 'color': { 'rgbColor': { 'blue': 1.0, 'green': 0.0, 'red': 0.0 } } }, 'dashStyle': 'DASH', 'padding': { 'magnitude': 20.0, 'unit': 'PT' }, 'width': { 'magnitude': 15.0, 'unit': 'PT' }, } }, 'fields': 'borderLeft' } } ] result = service.documents().batchUpdate( documentId=DOCUMENT_ID, body={'requests': requests}).execute()