আমি কীভাবে উইন্ডোজ কমান্ড প্রম্পট থেকে একটি ফন্ট ইনস্টল করব?


37

উইন্ডোজ কমান্ড প্রম্পট থেকে ফন্ট ইনস্টল করা সম্ভব? যদি হ্যাঁ, আদেশ কি?

আমি চেষ্টা করেছিলাম copy [fontname].ttf C:\Windows\Fonts\এবং এটি বলেছিল যে অনুলিপিটি সম্পূর্ণ হয়েছিল, তবে আমি ফন্ট ফোল্ডারে উল্লিখিত ফন্টগুলি খুঁজে পেলাম না বা কোনও প্রোগ্রামের ফন্টের তালিকায় খুঁজে পাইনি যাতে অবশ্যই কাজ না করে। (যদিও আমি ছিল মুছতে সক্ষম বলেন ফন্ট থেকে ফন্ট পরে ফোল্ডার)


উত্তর:


31

এটি সম্ভব তবে এটি করার জন্য আপনাকে উইন্ডোজ শেল স্ক্রিপ্ট লিখতে হবে। একা অনুলিপি করা ফন্ট ইনস্টল করবে না: আপনার এছাড়াও ফন্ট যেমন নিবন্ধকরণ করতে হবে

copy "FontName.ttf" "%WINDIR%\Fonts"
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts" /v "FontName (TrueType)" /t REG_SZ /d FontName.ttf /f

বিকল্পভাবে আপনি আপনার প্রয়োজন অনুসারে নিম্নলিখিত কোডের লাইনগুলি করতে পারেন; এটি একটি .vbs ফাইল হিসাবে সংরক্ষণ করুন এবং তারপরে এটি কার্যকর করুন।

Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace("<Folder or Share Location>")
Set objFolderItem = objFolder.ParseName("<TTF File Name>")
objFolderItem.InvokeVerb("Install")

উদাহরণ:

Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace("C:\Windows\Font")
Set objFolderItem = objFolder.ParseName("Myriad Pro.ttf")
objFolderItem.InvokeVerb("Install")

তবুও অন্য বিকল্প হ'ল ফন্টগুলি "অস্থায়ী" ইনস্টল করা, কেবলমাত্র বর্তমান ব্যবহারকারী সেশনের জন্য। ধারণাটি fontview.exeপ্রতিটি ফন্টের জন্য চালানো হয় যা এটি অন্যান্য উইন্ডোজ অ্যাপ্লিকেশনগুলির জন্য উপলব্ধ করে তোলে:

for /F "delims=;" %%a in ('dir C:\ExtraFonts /B /A-D-H-S /S') do fontview %%a

এখানে সম্পূর্ণ সমাধান দেখুন ।


আপনি কি আপনার স্ক্রিপ্টটি এখানে প্রসারিত করার জন্য এত দয়াবান হবেন: (1) স্বয়ংক্রিয়ভাবে সমস্ত ডিরেক্টরি *.ttfএবং *.fonবর্তমান ডিরেক্টরি থেকে ফন্টগুলি ইনস্টল করুন (২) Const FONTS = &H14&এখানে প্রস্তাবিত হিসাবে ব্যবহার করুন ( সেভেনফোমস / জেনারেল- ডিসকশন /… )। আমি ভিবিএস-এ রাজা নই :( অগ্রিম ধন্যবাদ
dma_k

1
objFolderItem.InvokeVerb("Install")উইন্ডোজ সার্ভার 2012 আর 2 তে কাজ করে না
অ্যান্টনি কং

@GeneQ: copyএবং reg addনা 10. Windows® এর মধ্যে প্রোগ্রামে তালিকাভুক্ত ফন্ট তোলে কি
user2284570

16

পাওয়ারশেলে এটি এতটা সহজ হতে পারে:

$fonts = (New-Object -ComObject Shell.Application).Namespace(0x14)
dir fonts/*.ttf | %{ $fonts.CopyHere($_.fullname) }

3
আমি এর সাথে দ্বিতীয় লাইনটি পরিবর্তন করবGet-ChildItem -Recurse -include *.ttf | % { $fonts.CopyHere($_.fullname) }
এভেজেনিশারপভ

2
মঞ্জুর, Get-ChildItemপাওয়ারশেল উপায়, আমি কেবল পাওয়ারশেল উপায়ে ঘৃণা করি (এখানে ইউনিক্স শেল স্নেহ করা), এবং dirএটির জন্য কেবল একটি উপনাম; এবং যদি আপনি পুনরাবৃত্তি চান, তবে আপনার সরবরাহ করা বিকল্পগুলি হ'ল উপায়। সাধারণ "এই ফোল্ডারে কেবল ফাইলগুলি স্ক্যান করুন" এর জন্য, আমার সংস্করণটি কম ভার্বোস এবং আরও পাঠযোগ্য।
গাস uss

5

জিনিকিউ এর সমাধানের মতো, এখানে স্ক্রিপ্টের ডিরেক্টরিতে সমস্ত .tf ফাইলের জন্য এটি করা একটি সংস্করণ রয়েছে:

Set ofso = CreateObject("Scripting.FileSystemObject")
SourceFolder = ofso.GetParentFolderName(Wscript.ScriptFullName)

Const FONTS = &H14&

Set objShell  = CreateObject("Shell.Application")
Set oSource   = objShell.Namespace(SourceFolder)
Set oWinFonts = objShell.Namespace(FONTS)

' Lame VBscript needs 4 f*ing lines instead of "if (/\.ttf$/i) " ...
Set rxTTF = New RegExp
rxTTF.IgnoreCase = True
rxTTF.Pattern = "\.ttf$"

FOR EACH FontFile IN oSource.Items()
    IF rxTTF.Test(FontFile.Path) THEN   
        oWinFonts.CopyHere FontFile.Path
    END IF
NEXT

আপনি কেবল আমার দিনটি সংরক্ষণ করেছেন :) আমার ডিফল্ট উইন্ডোজ ফন্টটি দূষিত হয়ে গেছে এবং এটিই আমি সমস্ত উইন্ডোজ ডিফল্ট ফন্টগুলি পুনরায় ইনস্টল করতে পারি। ধন্যবাদ !!
রিমা 16

পারফেক্ট! আমি এটি একটি কোম্পানির পুনরায় ব্র্যান্ডের পরে বেশ কয়েকটি কম্পিউটারের জন্য ব্যাট ফাইল দ্বারা চালিত একটি ভিবিএসে ব্যবহার করেছি। এটি ফন্টগুলি ইনস্টল করে, আউটলুকের জন্য ইমেল স্বাক্ষর ফাইলগুলি ইনস্টল করে এবং ব্রাউজারের হোম পৃষ্ঠা সেট করে
রিস করুন

3

কমান্ড প্রম্পট থেকে ফন্ট ইনস্টল করতে আপনি ফন্টরেগ ইউটিলিটিটিও ব্যবহার করতে পারেন ।


1
এটি আমার জন্য উইন্ডোজ 10 64 বিট এ কাজ করে নি।
জাঙ্গোফান

1
@ জাজানফান: আপনি কি একটি উন্নত কমান্ড প্রম্পট ব্যবহার করছেন? আমি উইন্ডোজ 10 এ এখনও ফন্টগ্রিগ চেষ্টা করি নি, তবে আমি এটির প্রয়োজন হবে বলে আশা করি।
আফরাজায়

সমস্যাটি ছিল আমি আমার সিস্টেমে ম্যাক ফন্টগুলি ইনস্টল করার চেষ্টা করছিলাম (তাদের ফাইল নাম এক্সটেনশন নেই)। আমি উইন্ডোজ .tf ফন্ট ফাইল এবং এখন সব ভাল পেয়েছি।
jangofan

1

আমার ক্ষেত্রে ইনস্টলফন্টস.ভিবিএস নামে একটি স্ক্রিপ্ট ফাইল তৈরি করুন আমি এটিকে সিতে রেখেছি: \ পোর্টেবল অ্যাপস \ ইনস্টলফন্টস \ নীচের কোডটিতে আপনি "ফটোগুলি ইনস্টল করতে সক্ষম হতে চান এমন ব্যক্তির ব্যবহারকারীর নাম দিয়ে" সামুসার "প্রতিস্থাপন করুন। তারপরে তাদের ডেস্কটপে যথাযথ "ইনস্টল হরফ" ফোল্ডারটি তৈরি করুন।

    Set ofso = CreateObject("Scripting.FileSystemObject")
'SourceFolder = ofso.GetParentFolderName(Wscript.ScriptFullName)
SourceFolder = "C:\Users\SomeUser\Desktop\Install Fonts"


Const FONTS = &H14&

Set objShell  = CreateObject("Shell.Application")
Set oSource   = objShell.Namespace(SourceFolder)
Set oWinFonts = objShell.Namespace(FONTS)

' Lame VBscript needs 4 f*ing lines instead of "if (/\.ttf$/i) " ...
Set rxTTF = New RegExp
rxTTF.IgnoreCase = True
rxTTF.Pattern = "\.ttf$"

FOR EACH FontFile IN oSource.Items()
    IF rxTTF.Test(FontFile.Path) THEN   
        oWinFonts.CopyHere FontFile.Path
    END IF
NEXT

এখন তাদের ডেস্কটপে একটি শর্টকাট তৈরি করুন যা নীচে ...

C:\Windows\System32\runas.exe /user:Administrator /savecred "wscript C:\PortableApps\InstallFonts\InstallFonts.vbs"

মনে রাখবেন যে আমি "প্রশাসক" ব্যবহার করেছি। আমি এটি সক্ষম করেছি এবং এটি একটি পাসওয়ার্ড নিযুক্ত করেছি। আমি মনে করি আপনি এর জন্য কোনও প্রশাসক অ্যাকাউন্ট ব্যবহার করতে পারেন। শর্টকাটটি প্রথমবার চালানোর সময় আপনাকে প্রশাসকের পাসওয়ার্ডের জন্য অনুরোধ জানানো হবে .. প্রতিবারের পরে এটি ঠিক কাজ করবে।

যদি এটি আপনাকে কোনও পাসওয়ার্ডের জন্য অনুরোধ না করে একটি cmd প্রম্পট থেকে শর্টকাট চালায় তবে তা আপনাকে অনুরোধ করবে।

আমি আপনাকে প্রতিশ্রুতি দিতে পারি না যে এটি কতটা সুরক্ষিত সে হিসাবে যদি তারা এটিকে উন্নত কোড চালানোর জন্য ব্যবহার করতে পারে। তবে এটি একটি সমাধান।


0

জেনিকিউ দ্বারা যেমন আগে বলা হয়েছিল, আপনি এভাবে এগিয়ে যান (আমি এটি পরীক্ষা করেছি)

  1. প্রশাসকের সুবিধার্থে একটি কমান্ড লাইন খুলুন
  2. কমান্ডটি ব্যবহার করুন:

/ এফ "ডিলিমস ="; % এ ইন ('দির সি: \ ফন্টডির / বি / এডিএইচএস / এস') হ'ল ফন্টভিউ

যেখানে সি: \ ফন্টসডির এমন একটি ডিরেক্টরি যেখানে আপনার টিএফএফ ফাইলগুলি সঞ্চয় করা থাকে। একবার কার্যকর "ফন্টভিউ" উইন্ডোগুলি "ফন্টডির" ডিরেক্টরিতে টিএফএফ ফাইলের সংখ্যার মতোই খোলা হবে। আপনার কেবল "ইনস্টল" বোতামটি ক্লিক করতে হবে এবং আপনি সেখানে আছেন! আপনার ফন্টগুলি আপনার সিস্টেমে ইনস্টল করা আছে

আশা করি এটি কারও সাহায্য করবে


for(উদাহরণস্বরূপ) এর পরিবর্তে এ জাতীয় জটিল আদেশ কেন for %a in (C:\FontsDir\*.*) do fontview "%a"?
আলে

কমান্ডটি লুকানো ফন্টগুলিও দেখায়
স্যাম ডক্সি

-1

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


3
তিনি বলেছিলেন যে অনুলিপি সফল হয়েছে। অনুমতিগুলি যদি সেখানে সফলভাবে অনুলিপি করা থেকে বিরত থাকে তবে এটি তাকে জানাতে পারত যে অনুলিপিটি ব্যর্থ হয়েছে, সুতরাং সম্ভবত সমস্যাটি এটি নয়।
nhinkle

-1

পুনরায় চালু না করে ফন্ট ইনস্টল করার উপায় খুঁজতে আমি প্রচুর সময় ব্যয় করেছি। অবশেষে আমি এটি পেয়েছি: ক্লিকফন্ট । এটি একটি সহজ এবং সঠিক সমাধান।

ক্লিকফন্ট সিস্টেমের যে কোনও জায়গা থেকে ট্রু টাইপ, ওপেনটাইপ এবং পোস্টস্ক্রিপ্ট ফন্টগুলির সহজ দুটি ইনস্টলেশন করতে অনুমতি দেয় allows এটি যা লাগে তা হ'ল কোনও ফন্ট বা ফোল্ডারে ডান ক্লিক করুন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.