Letos se uskuteční již 11. ročník soutěže v programování Kasiopea. Tato soutěž, (primárně) pro středoškoláky, nabízí skvělou příležitost procvičit logické myšlení a dozvědět se něco nového ze světa algoritmů – a to nejen pro zkušené programátory, ale i pro úplné začátečníky. Domácí kolo proběhne online od 22. 11. do 7. 12. 2025 a skládá se z 9 zajímavých úloh různé obtížnosti. Na výběru programovacího jazyka přitom nezáleží – úlohy jsou
… více »Byla vydána nová verze 2.52.0 distribuovaného systému správy verzí Git. Přispělo 94 vývojářů, z toho 33 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.
VKD3D-Proton byl vydán ve verzi 3.0. Jedná se fork knihovny vkd3d z projektu Wine pro Proton. Knihovna slouží pro překlad volání Direct3D 12 na Vulkan. V přehledu novinek je vypíchnuta podpora AMD FSR 4 (AMD FidelityFX Super Resolution 4).
Poštovní klient Thunderbird byl vydán v nové verzi 145.0. Podporuje DNS přes HTTPS nebo Microsoft Exchange skrze Exchange Web Services. Ukončena byla podpora 32bitového Thunderbirdu pro Linux.
U příležitosti státního svátku 17. listopadu probíhá na Steamu i GOG.com již šestý ročník Czech & Slovak Games Week aneb týdenní oslava a také slevová akce českých a slovenských počítačových her.
Byla vydána nová verze 9.19 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Vypíchnout lze například nový balíček BirdNET-Go, tj. AI řešení pro nepřetržité monitorování a identifikaci ptáků.
Byla vydána nová verze 3.38 frameworku Flutter (Wikipedie) pro vývoj mobilních, webových i desktopových aplikací a nová verze 3.10 souvisejícího programovacího jazyka Dart (Wikipedie).
Organizace Apache Software Foundation (ASF) vydala verzi 28 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.
Byl vydán Debian 13.2, tj. druhá opravná verze Debianu 13 s kódovým názvem Trixie. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.
Google představil platformu Code Wiki pro rychlejší porozumění existujícímu kódu. Code Wiki pomocí AI Gemini udržuje průběžně aktualizovanou strukturovanou wiki pro softwarové repozitáře. Zatím jenom pro veřejné. V plánu je rozšíření Gemini CLI také pro soukromé a interní repozitáře.
Řešení dotazu:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
from cx_Freeze import setup, Executable
# Dependencies are automatically detected, but it might need fine tuning.
#build_exe_options = {"packages": ["os"], "excludes": ["tkinter"]}
includefiles = [("src/pdftk.exe", "pdftk.exe"), ("src/libiconv2.dll", "libiconv2.dll")]
build_exe_options = {"packages": ["os"], "excludes": [""], "include_files": includefiles}
#build_exe_options = {}
# GUI applications require a different base on Windows (the default is for a
# console application).
base = None
#if sys.platform == "win32":
# base = "Win32GUI"
setup( name = "pdftkexample",
version = "1.0",
description = "PdfTk example",
options = {"build_exe": build_exe_options},
executables = [Executable("src/pdftkexample.py", base=base)])
Předpokládaná struktura adresáře je například:
C:\MojeAplikace\src - tam bude pdftkexample.py a pdftk.exe+libiconv2.dll
C:\MojeAplikace\setup-cxfreeze.py kde bude to co je napsané nahoře.
Po zmrazení bude pdftk.exe i s knihovnou libiconv2.dll přibaleno k výslednému exe progámku. Ovšem, aby ho bylo možno volat, je potřeba zjistit kde je umístěn, to se ve vlastním skriptu, který bude volat pdftk.exe udělá takto:
import sys
import os
import os.path
def getModulePath():
if (hasattr(sys, "frozen")):
return os.path.dirname(sys.executable)
return os.path.dirname(__file__)
def getPdftkExe(exe_name="pdftk.exe"):
path = os.path.join(getModulePath(), exe_name)
return path
if __name__ == "__main__":
exe = getPdftkExe()
print exe
V proměné exe je celá cesta k pdftk.exe, která se dá použít pro volání pomocí popen() atd.
pdftk_command='pdftk form.pdf fill_form form.fdf output form_from_script.pdf' os.system(pdftk_command)Zmrazeny exe skript prislusne pdf soubory nevytvari, cili stale jeste nevola pdftk. Tim se dostavam k tvemu druhemu skriptu, ktery vyhleda cestu k pdftk a vrati ji v promenne exe. Kdyz je pdftk ve stejne slozce se skriptem ktery ho vola, nemelo by stacit volat s cestou .\ , tedy takto?:
pdftk_command='.\pdftk form.pdf fill_form form.fdf output form_from_script.pdf' os.system(pdftk_command)
import logging
from decimal import *
import os
import glob
import sys
import os.path
def getModulePath():
if (hasattr(sys, "frozen")):
return os.path.dirname(sys.executable)
return os.path.dirname(__file__)
def getPdftkExe(exe_name="pdftk.exe"):
path = os.path.join(getModulePath(), exe_name)
return path
if __name__ == "__main__":
cesta_k_pdftk_exe = getPdftkExe()
#print(cesta k_pdftk_exe)
pdftk_command=cesta_k_pdftk_exe+' form.pdf fill_form form.fdf output form_from_script.pdf'
os.system(pdftk_command)
Tiskni
Sdílej: