Faits:
Faits:
A. Par ordonnance du 30 septembre 1999, le Président de la Chambre pénale du Tribunal cantonal du canton de Fribourg a désigné Me X._, avocat à Fribourg, en qualité de défenseur d'office de A._, pour l'assister dans la procédure pénale ouverte contre ce dernier des chefs de tentative de meurtre, de mise en danger de la vie d'autrui, de lésions corporelles simples et d'infraction à la loi fédérale sur les armes.
La procédure a pris fin avec l'arrêt de la Cour de cassation pénale du 21 juillet 2004 rejetant, dans la mesure où il était recevable, le pourvoi en nullité formé par A._ contre l'arrêt rendu le 30 mars 2004 par la Cour d'appel pénal du Tribunal cantonal du canton de Fribourg (ci-après: la Cour d'appel pénal ou la cour cantonale) le condamnant à deux ans d'emprisonnement et à son expulsion du territoire suisse pour une durée de cinq ans avec sursis pendant trois ans.
Le 25 août 2004, X._ a transmis à la Cour d'appel pénal ses listes de frais en vue de fixer son indemnité d'avocat d'office. Il prétendait à l'octroi d'une indemnité de 12'023 francs pour le recours en appel et d'une indemnité de 21'753,05 francs pour la procédure pénale.
Par arrêt du 5 janvier 2005, la Cour d'appel pénal a retenu que X._ avait consacré quelque 154 heures et 30 minutes à la défense des intérêts du prévenu et fixé l'indemnité globale équitable à 23'200 francs, auxquels elle a ajouté les débours effectifs par 652.80 francs, les indemnités de déplacement par 562.60 francs ainsi que la TVA par 1'812.80 francs.
Par arrêt du 5 janvier 2005, la Cour d'appel pénal a retenu que X._ avait consacré quelque 154 heures et 30 minutes à la défense des intérêts du prévenu et fixé l'indemnité globale équitable à 23'200 francs, auxquels elle a ajouté les débours effectifs par 652.80 francs, les indemnités de déplacement par 562.60 francs ainsi que la TVA par 1'812.80 francs.
B. Agissant par la voie du recours de droit public, X._ demande au Tribunal fédéral d'annuler cet arrêt qu'il tient pour arbitraire et qui violerait son droit d'être entendu.
La Cour d'appel pénal se réfère à son arrêt ainsi qu'à la liste de frais annotée et au détail des opérations retenues établis par le juge rapporteur.
X._ a répliqué sans y avoir été invité.

Le Tribunal fédéral considère en droit:
Le Tribunal fédéral considère en droit:
1. Formé en temps utile contre une décision finale prise en dernière instance cantonale et qui touche le recourant dans ses intérêts juridiquement protégés, le recours est recevable au regard des art. 86 al. 1, 88 et 89 al. 1 OJ. La détermination du recourant du 25 février 2005, déposée après l'échéance du délai de recours et sans qu'un second échange d'écritures n'ait été ordonné, ne peut être prise en considération.
1. Formé en temps utile contre une décision finale prise en dernière instance cantonale et qui touche le recourant dans ses intérêts juridiquement protégés, le recours est recevable au regard des art. 86 al. 1, 88 et 89 al. 1 OJ. La détermination du recourant du 25 février 2005, déposée après l'échéance du délai de recours et sans qu'un second échange d'écritures n'ait été ordonné, ne peut être prise en considération.
2. Le recourant prétend que la Cour d'appel pénal aurait violé l'obligation de motiver ses décisions, déduite de l'art. 29 al. 2 Cst., en s'écartant des listes de frais qu'il avait produites sans indiquer les opérations qu'elle tenait pour injustifiées et sans l'avoir invité à se déterminer préalablement.
2.1 La jurisprudence a notamment déduit du droit d'être entendu, garanti à l'art. 29 al. 2 Cst., l'obligation pour l'autorité de motiver sa décision, afin que le destinataire puisse la comprendre, l'attaquer utilement s'il y a lieu et que l'autorité de recours puisse exercer son contrôle. Pour répondre à ces exigences, il suffit que l'autorité mentionne, au moins brièvement, les motifs qui l'ont guidée et sur lesquels elle a fondé sa décision de manière à ce que l'intéressé puisse se rendre compte de la portée de celle-ci et l'attaquer en connaissance de cause (<ref-ruling> consid. 3.2 p. 236; <ref-ruling> consid. 2a p. 102 et les arrêts cités). Selon la jurisprudence rendue en matière de dépens, qui s'applique aux indemnités dues au défenseur d'office, la décision par laquelle le juge fixe le montant des dépens n'a en principe pas besoin d'être motivée, du moins lorsque celui-ci ne sort pas des limites définies par un tarif ou une règle légale et que des circonstances extraordinaires ne sont pas alléguées par les parties (<ref-ruling> consid. 2a; <ref-ruling> consid. 2 p. 120). En revanche, il en va différemment lorsque le juge statue sur la base d'une liste de frais; s'il entend s'en écarter, il doit alors au moins brièvement indiquer les raisons pour lesquelles il tient certaines prétentions pour injustifiées, afin que son destinataire puisse attaquer la décision en connaissance de cause (arrêt 1P.194/2004 du 18 juin 2004, consid. 5.3.1 in fine; cf. arrêt du Tribunal fédéral des assurances I 308/98 du 28 juillet 1999 consid. 3c publié in Pra 2000 n° 109 p. 638).
Or, la combinaison des art. 24 al. 1 et 27 de la loi fribourgeoise sur l'assistance judiciaire du 4 octobre 1999 prévoit que l'Etat paie au défenseur d'office un montant équitable fixé, sur présentation de sa liste de frais, par le président de l'autorité judiciaire compétente ou le juge d'instruction, voire par la Cour d'appel pénal, qui tient compte des circonstances de la cause et du nombre des audiences. Cette norme, qui ne s'en tient pas à l'octroi d'une simple indemnité équitable fixée par le juge, a pour conséquence de contraindre l'autorité judiciaire compétente à tenir compte de la liste de frais et à motiver au moins brièvement les postes sur lesquels elle n'entend pas confirmer les montants ou les durées y figurant.
2.2 En l'occurrence, la Cour d'appel pénal a estimé que X._ avait consacré quelque 154 heures et 30 minutes à la défense des intérêts du prévenu et fixé l'indemnité globale équitable à 26'228.20 francs, TVA incluse, alors que le recourant sollicitait une indemnité de 33'776.05 francs. Si elle a pris soin de détailler pour chaque phase de la procédure le temps qu'elle estimait nécessaire à l'accomplissement du mandat d'office, elle n'a en revanche pas précisé les postes de l'état de frais qu'elle jugeait superflus ou pour lesquels le nombre d'heures indiqué était trop élevé. En l'absence de ces indications, le recourant n'était pas en mesure de contester en connaissance de cause l'arrêt de la cour cantonale. Cette dernière a donc failli à l'obligation de motiver les décisions fixant le montant de l'indemnité d'office, telle qu'elle découle de l'art. 29 al. 2 Cst. et de la jurisprudence précitée. La violation du droit d'être entendu du recourant ne peut être réparée dans la présente procédure par la transmission des notes du juge rapporteur auxquelles la Cour d'appel pénal se réfère dans ses observations pour étayer sa décision; si elles permettent de cerner les opérations qui ont été jugées nécessaires à la défense des intérêts du prévenu, elles ne fournissent en revanche aucune indication sur les raisons pour lesquelles ce dernier a écarté d'autres postes de l'état de frais ou tenu certaines des opérations accomplies pour exagérées. L'arrêt attaqué doit par conséquent être annulé pour ce motif et la cause renvoyée à la cour cantonale pour qu'elle statue à nouveau.
2.2 En l'occurrence, la Cour d'appel pénal a estimé que X._ avait consacré quelque 154 heures et 30 minutes à la défense des intérêts du prévenu et fixé l'indemnité globale équitable à 26'228.20 francs, TVA incluse, alors que le recourant sollicitait une indemnité de 33'776.05 francs. Si elle a pris soin de détailler pour chaque phase de la procédure le temps qu'elle estimait nécessaire à l'accomplissement du mandat d'office, elle n'a en revanche pas précisé les postes de l'état de frais qu'elle jugeait superflus ou pour lesquels le nombre d'heures indiqué était trop élevé. En l'absence de ces indications, le recourant n'était pas en mesure de contester en connaissance de cause l'arrêt de la cour cantonale. Cette dernière a donc failli à l'obligation de motiver les décisions fixant le montant de l'indemnité d'office, telle qu'elle découle de l'art. 29 al. 2 Cst. et de la jurisprudence précitée. La violation du droit d'être entendu du recourant ne peut être réparée dans la présente procédure par la transmission des notes du juge rapporteur auxquelles la Cour d'appel pénal se réfère dans ses observations pour étayer sa décision; si elles permettent de cerner les opérations qui ont été jugées nécessaires à la défense des intérêts du prévenu, elles ne fournissent en revanche aucune indication sur les raisons pour lesquelles ce dernier a écarté d'autres postes de l'état de frais ou tenu certaines des opérations accomplies pour exagérées. L'arrêt attaqué doit par conséquent être annulé pour ce motif et la cause renvoyée à la cour cantonale pour qu'elle statue à nouveau.
3. Le recours est admis, dans la mesure où il est recevable. Le canton de Fribourg, qui succombe, est dispensé des frais judiciaires (art. 156 al. 2 OJ); conformément à la pratique du Tribunal fédéral, il versera une indemnité de dépens au recourant (cf. art. 159 al. 2 OJ; <ref-ruling> consid. 5b p. 519).

Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est admis, dans la mesure où il est recevable, et l'arrêt attaqué est annulé.
1. Le recours est admis, dans la mesure où il est recevable, et l'arrêt attaqué est annulé.
2. Il n'est pas perçu d'émolument judiciaire.
2. Il n'est pas perçu d'émolument judiciaire.
3. Une indemnité de 1'000 fr. est allouée au recourant à titre de dépens, à la charge du canton de Fribourg.
3. Une indemnité de 1'000 fr. est allouée au recourant à titre de dépens, à la charge du canton de Fribourg.
4. Le présent arrêt est communiqué en copie au recourant et à la Cour d'appel pénal du Tribunal cantonal du canton de Fribourg.
Lausanne, le 15 mars 2005
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le président: Le greffier: